[PHP]prob de passage de variable !?i

Discussion dans 'Web, design' créé par LebecK, 4 Avril 2004.

Statut de la discussion:
Fermée.
  1. Offline
    LebecK Touriste
    Code:
    <form action=\"new_accueil.php?act=1&id=$id\"method=\"GET\">
    <TEXTAREA name=\"niews\" rows=7 cols=45>$accueil->message</TEXTAREA><br>
    <br>
    <center><input type=\"submit\" value=\"ValideR\"><br></center>
    </form>
    
    et quand j recup la variable dans la page new_accueil.php

    Code:
    ...
    switch ($act){
    
    //modification
    case 1:
    $query= "UPDATE accueil SET message='$niews' where id=$id";
        echo"Modification<br>";
        break;
    default: 
    ...
    
    il me fait a tous les coups le default du switch, comme si la variable n'arrivait pas ..
    quelqu'un comprend et pourrait m'eclairer ?

    Merchi d'avance :D
    LebecK, 4 Avril 2004
    #1
  2. Offline
    LebecK Touriste
    un pti coup de main svp ..
    ya vraiment personne qui voit d'erreur ?
    LebecK, 5 Avril 2004
    #2
  3. Offline
    D R C ex membre
    et si tu ajoute avant ton switch un petit:

    $act = $_GET($act)
    D R C, 5 Avril 2004
    #3
  4. Offline
    LebecK Touriste
    j crois pas .. enfin j espère pas trop

    voici un autre lien vers une autre posibilitée du switch ..
    celui ci fonctionne

    Code:
    ...
    <a href=\"new_accueil.php?act=2&id=$accueil->id\">supprimer</a></td>
    ...
     
    mais j vais quand meme essaié ... merci de la proposition

    edit : nan .. il fait une erreur quand j met le 'Get'

    j ai fait un echo .. pour voir les valeurs des act qui passait .. ceux qui fonctionne .. il affiche tous bien .. et celui qui pose problem n'a meme pas l'air d'etre envoié ... en tous cas il s'affiche pas
    LebecK, 5 Avril 2004
    #4
  5. Offline
    J'utilise jamais le GET, en fait, je n'utilise que le POST (j'ai jamais essayé de piger comme se servir du GET pour un form ... enfin.....

    Par contre, tu pourrais peut-être utiliser une variable de type <input type=hidden name=act value=1>

    et redéfinir ce champs dans tous tes form ...

    enfin, voilà quoi (tu pourrais me dire exactement la différence entre un GET et un POST pour la méthode d'un form ?
    TheFornicator, 13 Avril 2004
    #5
  6. Offline
    SUEd Touriste
    Le GET, les variables passent dans l'url. Donc, quand tu submit ton form, tu vois toutes les variables dans ton url.
    Quand tu utilises le POST, les variables passent "en caché". Elles ne passent pas par l'url et tu n'y as donc accès que via le formulaire lui même.
    SUEd, 13 Avril 2004
    #6
  7. Offline
    haaaaaaa....... vive le POST je dis ! d'autant plus qu'en PHP, en fonction de la paramétrisation de ton serveur, tu matérialise toute variable passée en url par son nom précédé par un $, comme avec un POST ...

    (ce n'est pas la config recommandée, mais c pratique ;) )
    TheFornicator, 13 Avril 2004
    #7
  8. Offline
    SUEd Touriste
    oui, dans tous les cas, il est conseillé d'utiliser $_POST['NomVariable'] ou $_GET['NomVariable'] plutôt que $NomVariable :) comme ça, tu sais l'originie de ta variable (get => vient de l'url et post => vient d'un formulaire avec la méthode post).
    SUEd, 13 Avril 2004
    #8
  9. Offline
    AssiuM Fan
    comme ils disent, les variables d'un formulaire sont passées dans un tableau,
    $_GET[] si la méthode du formulaire est GET, et $_POST[] si la méthode du formulaire est post...
    tu n'es donc pas obligé de redéfinir les variables avec par exemple
    $foo=$_GET["foo"], c'est inutile ça définit une variable deux fois ;)
    AssiuM, 16 Avril 2004
    #9
  10. Offline
    Hu ??? :shock: :shock: :shock:

    J'ai pas suivi là .... qui redéfini deux fois une variable ? je disais qu'avec les paramètres de mon serveur, j'ai automatiquement la variable $foo, pas besoin de _GET["foo"] ou de $foo = ....

    je met $foo et j'ai la variable ..
    TheFornicator, 16 Avril 2004
    #10
Statut de la discussion:
Fermée.