Passer une variable dans une fonction

Signaler
Messages postés
10
Date d'inscription
mardi 6 novembre 2007
Statut
Membre
Dernière intervention
7 août 2008
-
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
-
J'ai essayer plusieurs méthode pour passer un paramètre $id dans une fonction mais ça ne fonctionne pas
 
La fonction avec les paramètres $i, et $id ( le paramètre $i fonctionne très bien mais le $id non... )
function Updatepartenaire_fr($i,$id)
  {      $sql "UPDATE exc_tblpartenaires SET lien_fr '" . mysql_real_escape_string($i) . "' WHERE IdPartenaire = '" . mysql_real_escape_string($id) ." '";
      $req = SQL_Query($sql) or die("Erreur SQL : $sql
".mysql_error());
  }

1ère méthode:
if(isset($_POST['valid_partenaire']))
         {
           $id = isset($_GET['id'])  ? $_GET['id'] : null;
           Updatepartenaire_fr($_POST['partenaire_fr'],$id);
           Updatepartenaire_en($_POST['partenaire_en'],$id);
           Updatepartenaire_es($_POST['partenaire_es'],$id);
         }
Cette méthode ne fonctionne pas...

2ème méthode:
if(isset($_POST['valid_partenaire']))

         {

           Updatepartenaire_fr($_POST['partenaire_fr'],1);

           Updatepartenaire_en($_POST['partenaire_en'],1);

           Updatepartenaire_es($_POST['partenaire_es'],1);

         }
Cette méthode fonctionne mais j'ai besoin d'une variable à la place du 1...

3ème méthode:

if(isset($_POST['valid_partenaire']))


         {


           Updatepartenaire_fr($_POST['partenaire_fr'],$_GET['id']);


           Updatepartenaire_en($_POST['partenaire_en'],$_GET['id']);


           Updatepartenaire_es($_POST['partenaire_es'],$_GET['id']);


         }
Cette méthode ne fonctionne pas non plus.

3ème méthode:


if(isset($_POST['valid_partenaire']))



         {



           Updatepartenaire_fr($_POST['partenaire_fr'],$_POST['id']);



           Updatepartenaire_en($_POST['partenaire_en'],$_POST['id']);



           Updatepartenaire_es($_POST['partenaire_es'],$_POST['id']);



         }
Cette méthode devrait fonctionner, mais elle ne fonctionne pas...

Quelqu'un pourais me donner une autre alternative pour passer une variable dans un de ces choix :
 $_POST['id'],
$_GET['id'],
1,
$id ?

11 réponses

Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
On peut voir le reste du code ? Genre le formulaire et ces choses la
Messages postés
10
Date d'inscription
mardi 6 novembre 2007
Statut
Membre
Dernière intervention
7 août 2008

J'ai un formulaire de 3 FCK... sert à rien de les écrire...

c'est là seule chose dont tu pourrais avoir de besoin de plus que j'ai oublier d'écrire

     [./partenaire.php?id=1 Partenaire 1]
     [./partenaire.php?id=2 Partenaire 2]
     [./partenaire.php?id=3 Partenaire 3]

     [./partenaire.php?id=4 Partenaire 4]
     [./partenaire.php?id=5 Partenaire 5]
     [./partenaire.php?id=6 Partenaire 6]

     [./partenaire.php?id=7 Partenaire 7]
     [./partenaire.php?id=8 Partenaire 8]
     [./partenaire.php?id=9 Partenaire 9]

     [./partenaire.php?id=10 Partenaire 10]
     [./partenaire.php?id=11 Partenaire 11]
     [./partenaire.php?id=12 Partenaire 12]

     [./partenaire.php?id=13 Partenaire 13]
Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
Déjà, une chose me chiffone, c'est que comme ca tu ne passes pas de variable en $_POST. Et en toute logique, avec ce que tu nous sers la, tu dois récuperer id avec $_GET['id']
Messages postés
10
Date d'inscription
mardi 6 novembre 2007
Statut
Membre
Dernière intervention
7 août 2008

1ère méthode:
if(isset($_POST['valid_partenaire']))
         {
           $id = isset($_GET['id'])  ? $_GET['id'] : null;

           Updatepartenaire_fr($_POST['partenaire_fr'],$id);
           Updatepartenaire_en($_POST['partenaire_en'],$id);
           Updatepartenaire_es($_POST['partenaire_es'],$id);
         }

ta réponse est totalement inutile ? J'ai rien compris de tes 2 phrase... Je vais chercher le $_GET['id']
prenez le temps le lire svp...
Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
bon...

if(isset($_POST['valid_partenaire']))
         {
           $id = isset($_GET['id'])  ? $_GET['id'] : null;
           Updatepartenaire_fr($_POST['partenaire_fr'],$id);
           Updatepartenaire_en($_POST['partenaire_en'],$id);
           Updatepartenaire_es($_POST['partenaire_es'],$id);
         }
Cette méthode ne fonctionne pas...


Ensuite... avec un lien [chose.html'id =toto lien], tu ne peux pas passer de variable POST

donc, dans ton code
isset($_POST['valid_partenaire'])


renverra toujours FAUX, et ta fonction sera jamais appelée. Si mes réponses te semblent inutiles, démerde toi dans ce cas la
Messages postés
10
Date d'inscription
mardi 6 novembre 2007
Statut
Membre
Dernière intervention
7 août 2008

2ème méthode:
if(isset($_POST['valid_partenaire']))
         {
           Updatepartenaire_fr($_POST['partenaire_fr'],1);
           Updatepartenaire_en($_POST['partenaire_en'],1);
           Updatepartenaire_es($_POST['partenaire_es'],1);
         }
Cette méthode fonctionne mais j'ai besoin d'une variable à la place du 1...

Oui on peu appeler la fonction désoler de te contredire mais cette fonction fonctionne très bien mais j'ai besoin D'UNE VARIABLE à la place du "1"
Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
je vois toujours pas ou il va récuperer ce $_POST['valid_partenaire']
Messages postés
510
Date d'inscription
lundi 27 novembre 2006
Statut
Membre
Dernière intervention
5 juillet 2009
2
Enfin je veux dire, comment tu le transmet surtout, parce que la, c'est completement pas logique
Messages postés
10
Date d'inscription
mardi 6 novembre 2007
Statut
Membre
Dernière intervention
7 août 2008

<form action="partenaire.php" method="post" enctype="multipart/form-data">

... tout mon code blabla
blabla

</form>
Messages postés
10
Date d'inscription
mardi 6 novembre 2007
Statut
Membre
Dernière intervention
7 août 2008

tout ce que je veux savoir c'est comment passer le 2eme paramètre de ma fonction, appeler dans un autre fichier php ( include "./adm/lib/partenaire.inc.php... blabla)

function Updatepartenaire_fr($i,$id)

  {
      $sql = "UPDATE
exc_tblpartenaires SET lien_fr = '" . mysql_real_escape_string($i) . "'
WHERE IdPartenaire = '" . mysql_real_escape_string($id) ." '";
      $req = SQL_Query($sql) or die("Erreur SQL : $sql
".mysql_error());
  }

le $I fonctionne très bien mais le $id ne fonctionne pas... il est bien déclarer partout et quand je met un "echo $id;" dans mon code il me donne le bon $id selon le Ulink que j'ai clicker dans le bas...
Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
18
Au lieu d'utiliser des $_POST ou $_GET, as tu essayé de faire directement des $_REQUEST ?