Il y a actuellement 64 visiteurs
Vendredi 06 Août 2021
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

[PHP] $strLen renvoi rien.

Besoin d'aide pour configurer un serveur ? Vous souhaitez obtenir des conseils pour référencer votre site ? Un petit souci pour accéder à votre FTP ? Des soucis de programmation en PHP / ASP / HTML / XHTML / XML / XSLT / CSS / ReactJS / AngularJS / VueJS / CGI / PERL / C / MySQL / PostgreSQL ??? Nous avons peut-être la solution dans ce forum ...

[PHP] $strLen renvoi rien.

Message le 13 Jan 2013 15:00

Bonjour tout le monde!
Je suis codeur débutant dans le Pawn, le PHP et je connais assez bien le MySQL.
Bref, on s'en fou, mon problème est que j'ai souvent ce message d'erreur:
Warning: fread(): Length parameter must be greater than 0 in C:\xampp\htdocs\SampQuery.class.php on line 184


En traduisant:
Le paramètre indiquant la taille doit être plus grand que 0 dans C:\ .. sur la ligne 184.

Voici le code:
Code: Tout sélectionner
    public function getRules() {
        @fwrite($this->sock, $this->assemblePacket("r"));
        fread($this->sock, 11);

        $ruleCount = ord(fread($this->sock, 2));
        $rules = array();

        for($i = 0; $i< $ruleCount; ++$i) {
            $strLen = ord(fread($this->sock, 1));
            $rule = (string) fread($this->sock, $strLen); // Ligne 184

            $strLen = ord(fread($this->sock, 1));
            $rules[$rule] = (string) fread($this->sock, $strLen); // La même erreur ici
        }
        return $rules;
    }

Moi même je ne sais pas trop ce que ça veut dire sachant que j'ai pris ce bout de code d'internet :)
Tout ce que je sais c'est qu'il récupère la variable d'un serveur de jeux grâce à ord(..) et fread(..) et qui la renvoi après.
Le problème vient donc de:
Code: Tout sélectionner
$strLen = ord(fread($this->sock, 1));


Le serveur est bien allumé et il m'indique si il faut un mot de passe pour s'y connecter (sachant que cette option n'est modifiable que sur le serveur).

Pouvez vous m'aider? Merci d'avance.

L'Dami.
Codeur en:
. HTML
. PHP
. CSS
. Pawn
L'Dami
Visiteur
Visiteur
 
Messages: 4
Inscription: 13 Jan 2013 14:44
 


Re: [PHP] $strLen renvoi rien.

Message le 13 Jan 2013 15:11

A DÉPLACER:
forum-programmation-web-ftp-vf15.html

Désolé j'avais pas vu ce forum..
(PS: je peux pas edit..)

EDIT: Je peux edit.
Codeur en:
. HTML
. PHP
. CSS
. Pawn
L'Dami
Visiteur
Visiteur
 
Messages: 4
Inscription: 13 Jan 2013 14:44
 

Re: [PHP] $strLen renvoi rien.

Message le 13 Jan 2013 15:50

Bonjour
Je déplace :wink:
La sagesse est une montagne dont la base est confondue avec le sommet
...Celui qui a été lumière jamais ne disparait.. il reste lumière, sentinelle dans l'éternité, son aura bienveillante nous montre le chemin.
Avatar de l'utilisateur
EinsteinZero
Moderateur
Moderateur
 
Messages: 17291
Inscription: 27 Déc 2009 16:22
Localisation: Normandie
 

Re: [PHP] $strLen renvoi rien.

Message le 13 Jan 2013 16:00

Merci bien ;)
Codeur en:
. HTML
. PHP
. CSS
. Pawn
L'Dami
Visiteur
Visiteur
 
Messages: 4
Inscription: 13 Jan 2013 14:44
 

Re: [PHP] $strLen renvoi rien.

Message le 16 Jan 2013 11:34

Bahh à froid je dirais que l'erreur est explicable... Et perso je comprend pas bien le but de ton code.
Tu as lu une première fois avec
Code: Tout sélectionner
$strLen = ord(fread($this->sock, 1))

... qui te renvoit la "valeur ASCII" normalement du 1er caractère lu. Et là visiblement c'est "0" qui est renvoyé, ou une valeur négative (peut-être un échec de lecture).
Et après tu tentes de refaire une lecture en lisant "$strlen" caractères
Code: Tout sélectionner
$rule = (string) fread($this->sock, $strLen); // Ligne 184

... sauf que $strlen doit être égal à 0 ou à la valeur négative... d'où l'erreur.

Conseil : affiche les valeurs renvoyées par :
Code: Tout sélectionner
fread($this->sock, 1)

puis
Code: Tout sélectionner
ord(fread($this->sock, 1))

... pour y voir plus clair et trouver le bug.

Le 1er caractères est-il sensé contenir une valeur exploitable pour lire la suite du flux ??
Libérez-vous : http://www.debian.org
Nobody knows what sysadmin does... until he stops doing it
Avatar de l'utilisateur
CaSa
PC-Infopraticien
PC-Infopraticien
 
Messages: 8978
Inscription: 13 Mai 2003 16:32
Localisation: Sisteron... et jamais loin d'une Debian
 



Sujets similaires

Message mac book pro a1258 rien à l'écran
bonjourj'ai acheté sur un marché un mac book pro a1258le hic c'est qu'il n'y avait pas de disque dur, j'en ai mis un mais ne connaissant pas grand chose dans les macde plus, lorsque je l'allume, je n'ai aucun menu et après une minute, j'ai un icône qui apparait : un dossier avec un point d'interroga ...
Réponses: 4

Message Gtx 1660 Ti qui n'affiche rien + 5 bips au démarage
onjour , j'ai récemment changé les composants de mon pc pour l'upgrade.J'ai acheté une gtx 1660 ti de Gigabyte sur Amazon, j'ai build le pc mais au démarrage, aucune image sur mon écran qui prend en charge le dvi(j'ai donc utilisé un cable hdmi dvi),je précise que j'ai essayé avec un autre écran qui ...
Réponses: 19

Message ordinateur qui rame et ne veut rien savoir
Bonjour, j'ai un soucis avec mon ordi depuis hier, il rame énormement at je ne peut même pas imprimer un pdf, je ne sais pas si celà vient de la connection ou de l'ordi, j'ai réinitialiser la box orange j'ai éteint et rallumer l'ordi rien ne change, j'ai nettoyer l'ordi via google chrome vider le ca ...
Réponses: 5

Message Mon PC n'affiche plus rien
Bonjour à tous,J'ai acheté un PC fixe il y a environ 3 semaines et jusqu'ici aucun souci. Aujourd'hui je me rends compte que mon écran ne détecte pas le pc.. j'ai essayé de le redémarrer, brancher sur un autre écran, de brancher un pc portable sur le câble hdmi (ça fonctionne). Je ne sais pas du tou ...
Réponses: 4

Message Ordinateur qui démarre mais n'affiche rien à l'écran
Bonjour,J'ai un souci avec mon ordinateur, il démarre bien mais il n'y a rien qui s'affiche à l'écran. Je ne m'en sert très peu mais la dernière fois que je l'ai utilisé il marchait parfaitement. J'ai essayé de changer plusieurs composants:- J'ai changé les barrettes de RAM- J'ai changé la pile BIOS ...
Réponses: 6

Message Renvoi automatique page internet
Bonjour,Médiateur numérique dans un musée, des tablettes sous Androïd et iOS sont à disposition pour visiter un site internet. Le problème c'est qu'une fois qu'un visiteur a pianoté sur la tablette, le suivant se retrouvera sur une page lambda, différente de celle que j'aurai voulu au départ.Ma ques ...
Réponses: 1

Message Nouveux pc rien à l'écran
Bonjour Alors j'ai un problème, j'ai acheté des composants d'ordinateur d'occasion et j'ai tout assemblé. Le problème c'est que au démarrage, tout se met en route correctement (enfin je pense... Je m'y connais pas beaucoup en informatique) mais à l'écran... rien. Alors j'ai essayé de retirer la cart ...
Réponses: 1


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


.: Nous contacter :: Flux RSS :: Données personnelles :.