| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
jt Membre impliqué

Inscrit le: 27 Juil 2003 Messages: 155
|
Posté le: 22 Oct 2003 0:40 Sujet du message: |
|
|
Erreur dans la fonction classement
while(!eregi($debut,$ligne=fgets($fichier))) ;
=>
Warning: Wrong parameter count for fgets() in /home/alibasket/public_html/test/classement.php on line 30
Quand je lui dit de m'afficher $fichier çà me met Resource id #4
Je sais pas si c'est l'heure tardive, mais je ne comprends plus rien.
HELP ! _________________
Vendez vos objets sur eBay !
|
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 8:31 Sujet du message: |
|
|
Ton erreur ne vient pas de la " fonction " classement.
Car Php indique une mauvaise utilisation de fgets mais à la ligne 30 de la page de présentation classement.php
Le code que tu me donnes se trouve dans fonction_classement.php donc n'est pas concerné par l'erreur.
Si tu as modifié le code de classement.php ; peux tu me le donner dans son integralité pour que je l'étudie ? _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
jt Membre impliqué

Inscrit le: 27 Juil 2003 Messages: 155
|
Posté le: 22 Oct 2003 8:48 Sujet du message: |
|
|
En fait pour faire mes tests j'avais collé la fonction clasement dans le fichier classement lui-même. Là j'ai re-séparé et j'ai fait un petit include. Mais l'erreur est la même. Sauf que c'est ligne 13 de la fonction classement que je n'ai pas touché.
Est-ce que c'est pas mon hébergeur qui n'accepte pas une fonction ou un truc du style ? |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 9:06 Sujet du message: |
|
|
essai de faire un echo $fichier mais dans la fonction classement pour voir la ressource assignée à ta variable $fichier (de la fonction classement).
Si tu as $fichier=resource #0 alors ça veut dire que t as un probleme de variables globale. Certains hebergeurs mettent les register_globals à "off" dans leur php.ini pour raison de sécurité. C'est une nouveauté.
Dans ce cas rajoute cettte ligne juste au début de la fonction :
function classement($url){
$url=$_GET['url'];
...
}
Pour en savoir plus sur cette nouveauté trés contreversée de PHP
http://www.php.net/release_4_1_0_fr.php
http://www.phpinfo.net/articles/article_globals.html _________________ Eddyhalftime.com votre magazine de la mi-temps !
Dernière édition par r23o le 22 Oct 2003 9:46; édité 2 fois |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 9:34 Sujet du message: |
|
|
OU essai aussi ceci :
Remplace dans la fonction classement la ligne :
while(!eregi($debut,$ligne=fgets($fichier))) ;
par
do $ligne=fgets($fichier); while(!eregi($debut,$ligne));
Car j'ai peur qu'il y ait encore un probleme de porté de variable en imbriquant les 2 fonctions : eregi et fgets _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 9:39 Sujet du message: |
|
|
Enleve $url=$_GET['url'];
C'était une mauvaise idée.
Chez moi ça ralenti l'affichage.
Mais essai ce que je t'ai dit juste avant (avec le do while).
Et tiens moi au courant.
Bonne journée.
J'vais en cours... _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
jt Membre impliqué

Inscrit le: 27 Juil 2003 Messages: 155
|
Posté le: 22 Oct 2003 9:57 Sujet du message: |
|
|
Modif 1 : echo
Resource id #4
Modif 2 : $_GET
Fatal error: Call to undefined function: array() in /home/alibasket/public_html/test/fonction_classement.php on line 6
 _________________
Vendez vos objets sur eBay !
|
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 10:05 Sujet du message: |
|
|
oui excuse moi j'avais ecrit _GET() avec des parethese.
J'ai rectifié c'est en fait un tableau. _GET[] avec des crochets.
Attention n'existe pas dans toutes les versions de PHP.
Mais essai la modif avec le do while (3 posts plus haut) ça devrait marcher... _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
jt Membre impliqué

Inscrit le: 27 Juil 2003 Messages: 155
|
Posté le: 22 Oct 2003 11:16 Sujet du message: |
|
|
Oui j'avais rectifié par moi-même après.
Bon j'ai trouvé d'où vient le problème.
En fait fgets necessite 2 paramètres sur la version php de mon herbergeur... donc fgets($fichier, ...)
string fgets ( resource handle , int length )
fgets retourne la chaîne lue jusqu'à la longueur length - 1 octet, ou bien la fin du fichier, ou encore un retour chariot (le premier des trois qui sera rencontré).
Le paramètre length est devenu optionnel depuis PHP 4.2.0. Si il est omis, il prend la valeur par défaut de 1024. Depuis PHP 4.3.0, omettre le paramètre length fait que la fonction va continuer à lire le flôt jusqu'à ce que la ligne s'achève. Si la majorité des lignes du fichier dépassent les 8 ko, il est plus efficace pour votre script de spécifier ce paramètre.
Donc mon hébergeur doit être en php3... Bref quand tu fera ton open-source. Pense à le spécifier pour les versions antérieures...
Bon en attendant, sais-tu comment définir cette valeur ? Est-ce la longueur de la ligne du fichier basketfrance ? Y a t'il une fonction pour la déterminer dynamiquement ou dois-je passer par un paramètre style 1024... |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 12:37 Sujet du message: |
|
|
Si ton hebergeur est en PHP3 (ce qui m'etonnerait (tu peux le savoir en faisant un phpinfo()) alors tu ne devrais pas avoir de probleme avec les register_globals ; Puisse que ces changements n'ont eu lieu qu'avec les toutes dernieres versions de PHP. Même mon hebergeur OVH n'a pas encore passer l'option register_globals à "off".
Le parametre optionel à la fonctionn fgets est souvent prise à 4096.
Au fait je ne compte pas en faire un code ouvert. Je crois qu'il n'y a pas bcp de club de basket en france avec un site professionnel et dynamique. ça servirait donc à rien de faire du open source.
Ce que je compte faire c'est installer un service sur alv basket où les sites de club de basket viendraient s'inscrire en nous indiquant les urls de leurs pages de classements ffbb. Et nous les mettrons dans notre base de donnée.
Ensuite je crée un script php qui affiche une page de classement ffbb personnalisée selon les urls qu'on selectionnera dans la base de donnée et propres à un unique club de basket.
Il suffira alors au club en question d'inserer sur son site un tout petit code du genre <? include("http://www.alvoltaire.com/script_classementffbb.php?idclub=23"); ?> pour les sites php et comme ça on peut même permettre a des sites non dynamique (et dieu sait s'il y en a des tonnes) d'afficher nos pages de classement grace à un simple : <iframe src="http://www.alvoltaire.com/script_classement.php?idclub=23" +options></iframe>
Qu'est ce que tu en penses ? _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
jt Membre impliqué

Inscrit le: 27 Juil 2003 Messages: 155
|
Posté le: 22 Oct 2003 12:53 Sujet du message: |
|
|
En plus çà les 'oblige' à faire un lien vers ton site... Tu es une mine d'or de bonnes idées toi !!!
Tu fais quoi comme études déjà ? Je sais que c'est une fac d'info mais quel niveau ? |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 12:54 Sujet du message: |
|
|
Au fait pour colorer tes tables de classement rajoute ceci dans ta feuilles de style :
/* mise en forme du tableau en generale (bordure et ligne de titre) */
table.cadre { font-size : 9pt; border-color : white; border : 0; }
td.tit-1 { font-size : 8pt; color : white; background-color : #527CBA; }
td.altern-2 { font-size : 9pt; background-color : white; }
/* Pour mettre en surbrillance ton club dans les classement */
/* couleur de fond de la ligne à mettre en surbrilance (Bleu sur alvoltaire.com) et style et couleur du texte (blanc)*/
td.select-altern {font-weight: bold; color : white ; background-color : #527CBA; };
td.select-no-altern {font-weight: bold; color : white ; background-color : #527CBA; };
/* couleur et style du lien (blanc sur alvoltaire.com) */
a.select-altern {font-weight: bold; color : white};
a.select-altern:visited {font-weight: bold; color : white};
a.select-no-altern {font-weight: bold; color : white};
a.select-no-altern:visited {font-weight: bold; color : white};
Voilà _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 13:10 Sujet du message: |
|
|
| jt a écrit: | | En plus çà les 'oblige' à faire un lien vers ton site... |
Hé Hé t'as tout compris...
| jt a écrit: | | Tu es une mine d'or de bonnes idées toi !!! |
merci
| jt a écrit: | | Tu fais quoi comme études déjà ? Je sais que c'est une fac d'info mais quel niveau ? |
J'devais être en licence d'info cette année, mais j'ai planté mes partiels. J'fini donc mon dernier semestre de deug en ce moment. J'espere changer de filiere l'année prochaine et faire un iup reseau (ce serait un complement trés interessant à mes compétences de concepteur web).
Mon rêve serait de monter une boite de conception de site internet professionnel avec hebergement et gestion de nom de domaine. Mais il me manque les connaissances systeme et reseau que la filiere iup pourra j'en suis sûr m'apporter rapidement (en 2 ans)... _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
jt Membre impliqué

Inscrit le: 27 Juil 2003 Messages: 155
|
Posté le: 22 Oct 2003 16:42 Sujet du message: |
|
|
Pour la feuille de style, t'inquiète, j'avais déjà piqué dans la tienne avant que tu ne me le propose .
Je pense que j'améliorerais la présentation un jour où j'aurais du temps.
Ok pour l'IUP, c'est con d'avoir raté tes partiels. mais bon... ca arrive à tout le monde. Moi j'ai fait DUT à Villeurbanne. C'est sympa, mais à la base je suis rentré là-bas par défaut dirons-nous, donc je n'étais pas passionné. Maintenant avec le temps, ca vient un peu... Mais des fois çà me saoule grave...
Bon merci pour le classement. Si je peux faire quelquechose pour toi... |
|
| Revenir en haut |
|
 |
r23o Administrateur



Inscrit le: 04 Mai 2003 Messages: 5564 Localisation: lyon
|
Posté le: 22 Oct 2003 21:54 Sujet du message: |
|
|
De rien...
T'inkiete le jour où j'aurais besoin de tes services j'hesiterai pas  _________________ Eddyhalftime.com votre magazine de la mi-temps ! |
|
| Revenir en haut |
|
 |
|
|