JeuWeb - Crée ton jeu par navigateur
[Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement (/showthread.php?tid=6076)

Pages : 1 2


[Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - jeeron - 09-04-2012

Bonjour à tous,
je rencontre aujourd'hui un petit soucis.

Je faisait mes tests sur un des mes comptes free pour travailler sur mon petit jeu.
J'ai quand même décidé de l'essayer sur un hébergement pro que je possède pour voir s'il y avait d'éventuelles erreurs .. et là : PATATRACBUG

Je m'aperçois que TOUTES les fonctions ne marchent pas sur d'autres hébergeurs
(version php 5 sur les nouveaux, 4 chez free :'( )

Je poste ici mon problème si quelqu'un pouvait juste m'aiguiller.

Voila ce qu'il y avait à la base (hébergé chez free, fonctionne super)
Page compte.php :


Code :
if ($action == "genre"){
        echo "<form method=post action=compte.php?action=genre&step=set>";
        echo "<select name=genre><option value=Homme>Homme</option><option value=Femme>Femme</option></select>";
        echo "<br><input type=submit value='Set'>";
        echo "<br><center>[<a href=compte.php>Retour</a>]</center>";
        if ($step == "set"){
                mysql_query("UPDATE userdb SET genre = '$genre' WHERE id ='$playerinfo[id]'");
                echo "Vous avez mis à jour votre Genre";            
            }
}

Pour info, je fais un include("gameconfig.php"); sur chaque page.
Dans ce gameconfig.php rien n'est attribué à $genre ni sur cette page et pourtant ça marche.

Voila, j'ai donc modifié le tout pour que cela marche sur mon hébergement actuel :

Code :
if ($_GET['action'] == "genre") {
        echo "<form method=post action=compte.php?action=genre&step=set>";
        echo "<select name=genre><option value=Homme>Homme</option><option value=Femme>Femme</option></select>";
        echo "<br><input type=submit value='Set'>";
        echo "<br><center>[<a href=compte.php>Retour</a>]</center>";
        if ($_GET['step'] == "set"){
                mysql_query("UPDATE membres SET genre = '$genre' WHERE id ='$playerinfo[id]'");
                echo "Vous avez mis à jour votre Genre";            
            }
}

Voyez-vous un truc qui cloche ? parce que là, j'avoue ne pas comprendre du tout.

1- Pourquoi chez free - alors que la variable $genre n'est déclarée nulle part - cela marche lorsque je veux mettre à jour mon genre.

2- Pourquoi être obligé de passer par $_GET['action'] sur les nouvelles versions de php, ou pourquoi rien n'est compatible d'une version à une autre ?

Merci d'avance en tout cas Smile





RE: Probleme Formulaire - Marche sur Free pas sur les autres hébergement - php_addict - 09-04-2012

je ne suis pas certain de comprendre...

tu veut dire que les paramètres action et step dans tes urls initialisent les variables $action et $step automatiquement chez free ???

de toute façon si tu veut récupérer les paramètres de tes url il faut passer par $_GET['action'] et $_GET['step']


RE: Probleme Formulaire - Marche sur Free pas sur les autres hébergement - jeeron - 09-04-2012

Salut php_addict Smile
oui tu as bien saisi même si cela parait bizarre Big Grin
Chez free, les variables $action et $step s'initialisent seules ... pourtant , je me suis posé cette même question et vérifié dans mon seul ficher de config .. mais .. RIEN lol

Je passe pourtant bien par $_GET là dans ce cas,

Je continu mes recherches, merci en tout cas Smile


RE: Probleme Formulaire - Marche sur Free pas sur les autres hébergement - Maks - 09-04-2012

Peut être un rapport avec la suppression des register_globals dans PHP 5.4 ?


RE: Probleme Formulaire - Marche sur Free pas sur les autres hébergement - jeeron - 09-04-2012

Maks >> MERCI !
j'ai du mettre un php.ini avec register globals, car dans le .htaccess cela me retournais une erreur 500 ..

En tout cas SUPER !!! ca woule !!


RE: [Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - Maks - 09-04-2012

Ceci dit je t'invites grandement à passer ton code avec les tableaux superglobaux puis à désactiver les register_globals ensuite, question de sécurité ^^


RE: [Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - Murthy - 09-04-2012

Et si je peux me permettre, essaie de prendre le temps pour réviser ton HTML car d'après ce que je vois tu utilises du code obsolète ;-)

Telles que la balise center et br.


RE: [Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - Maks - 09-04-2012

Et dire que la balise <center> est dépréciée même en HTML4 :o

Mettre <center> dans une page HTML, c'est faire du HTML... 3.2 Big Grin


RE: [Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - jeeron - 09-04-2012

wouaou, je prend encore une claque Big Grin
(faut tout que je révise moi)
Merci des infos !! ;o

J'édite pour savoir vers ou me diriger :
et avec du :
<div style="text-align: center;">mon texte au centre</div> c'est ok ?


RE: [Résolu] Probleme Formulaire - Marche sur Free pas sur les autres hébergement - Maks - 09-04-2012

Oui, même si l'idéal de l'idéal c'est de ne pas mettre de CSS en dur Wink (ceci dit ça m'arrive parfois personnellement ^^)