coment passer données via Url ?

Répondre
clicone
le 21/05/2006 à 12:23
clicone
Hello, J’ai un problème, je vousdrais savoir comment faire pour passer via l’url et recuperer sur la page suivantes toutes mes valeurs ?

Ya rien qui s’affiche… ?

Voici mon code :
// -- PAGE1

//--- Mes valeurs
$valeur1=$tablo[$i]['photo1'];
$valeur2=$tablo[$i]['reference'];
$valeur3=$tablo[$i]['prix'];
$valeur4=$tablo[$i]['titre'];

// --- Envoi
<a href="/shpfiche.php?valeurs='.$valeur1.','.$valeur2.','.$valeur3.','.$valeur4.'">


//--PAGE2

<?php echo $_GET['photo1']; ?>
<?php echo $_GET['titre']; ?>
<?php echo $_GET['reference']; ?>
etc…
Si Dieu existe, j'espère qu'il a une bonne excuse -woody allen-
i M@N
le 21/05/2006 à 12:33
i M@N
Hello !

Code en register global à OFF :
<?php

//--PAGE2
if (isset($_GET['photo1'])) $photo1 = $_GET['photo1']; else $photo1 = "";
if (isset($_GET['titre'])) $titre = $_GET['titre']; else $titre = "";
if (isset($_GET['reference'])) $reference = $_GET['reference']; else $reference = "";

echo $photo1;
echo $titre;
echo $reference;
//etc…

?>

@+...
One Love, One Heart, One Unity.
i M@N
le 21/05/2006 à 12:43
i M@N
Reuh ...

Par contre ça c'est pas bon :
<a href="/shpfiche.php?valeurs='.$valeur1.','.$valeur2.','.$valeur3.','.$valeur4.'">

Remplace par :
<a href="/shpfiche.php?photo1='.$valeur1.'&titre='.$valeur2.'&reference='.$valeur3.'">
ou un truc dans le genre.

@+...
One Love, One Heart, One Unity.
clicone
le 21/05/2006 à 13:48
clicone
Hello i M@n merci pour ton aide,

si j'écris ca : <a href="/shpfiche.php?photo1='.$valeur1.'&titre='.$valeur2.'&reference='.$valeur3.'">

Ya un bug, je recois ca : Notice: Use of undefined constant valeur2 - assumed 'valeur2' in etc idem pour chaque valeur...

?
Si Dieu existe, j'espère qu'il a une bonne excuse -woody allen-
i M@N
le 21/05/2006 à 14:01
i M@N
Reuh ...

Assure-toi dans ta page 1 que tes $valeur1,2,3,4 etc valent quelque chose par un echo $valeur1; etc ...

Je sais pas ce qui a dans ton tableau, p'tet le problème vient de là.

@+...
One Love, One Heart, One Unity.
clicone
le 21/05/2006 à 14:22
clicone
Ouais ... j'avais oublié $

bah!
Si Dieu existe, j'espère qu'il a une bonne excuse -woody allen-
clicone
le 21/05/2006 à 17:00
clicone
Bon voilà, j’ai encore besoin d’aide, cette fois j’ai un probleme pour :

Modifier le nombre d’articles du panier

Voici mon code :
<?php
//PAGE1

//je passe ma référence et mon prix dans la page 2

<a href="cart.php?reference=<?php echo $_GET[ 'reference']; ?>&prix=<?php echo $_GET[ 'prix']; ?> …

//PAGE2

if(!isset($_GET[ 'modifPanier'])) $modifPanier="";
else $modifPanier=$_GET[ 'modifPanier'];

//script modif nombre articles du panier

if ($modifPanier=="ACTUALISER")
{
for ($i=0;$i<count($liste);$i++)
{
$nbi='nb'.$i;
$liste[$i][1]=$_GET["$nbi"];//recup nbr article dans la liste
$liste[$i][3]=$liste[$i][1]*$liste[$i][2];
}
$_SESSION[ 'liste']=$liste;
}


//dans le formulaire choix quantité

<select name="nb<?php echo $i ?>" id="nb">
<option value="1" <?php if($liste[$i][1]==1) echo "SELECTED"; ?>>1</option>
<option value="2" <?php if($liste[$i][1]==2) echo "SELECTED"; ?>>2</option>
<option value="3" <?php if($liste[$i][1]==3) echo "SELECTED"; ?>>3</option>
<option value="4" <?php if($liste[$i][1]==4) echo "SELECTED"; ?>>4</option>



<input type="submit" name="modifPanier" value="Actualiser">
Si Dieu existe, j'espère qu'il a une bonne excuse -woody allen-
i M@N
le 21/05/2006 à 17:08
i M@N
Reuh ...

Mais arrête avec tes
<?php echo $_GET['reference']; ?>
non d'une pipe ! smiley

<?php 

/*on récupère la variable issue de $_GET et on l'initialise*/
if (isset($_GET['reference'])) $reference = $_GET['reference']; else $reference = "";
/*on l'affiche*/
echo $reference;
/*stoo spa compliqué ^^*/

?>
Fais pareil en début de script avec toutes tes variables issues de $_GET ou $_POST et ça va aller beaucoup mieux ...

@+...
One Love, One Heart, One Unity.
clicone
le 21/05/2006 à 18:21
clicone
Bon, j’ai re-écris les GET et POST correctement, les données passent bien de la page1 à 2, j’arrive aussi à supprimer un article, mais impossible d’actualiser/ajouter un article ou passer à la page commande.

Est-ce que ce code est bon ?

<?php
if(!isset($_GET['modifPanier'])) $modifPanier="";
else $modifPanier=$_GET['modifPanier'];

if(!isset($_GET['enregistreCommande'])) $enregistreCommande="";
else $enregistreCommande=$_GET['enregistreCommande'];


//AJOUT PANIER
if ($ajoutPanier=="AJOUTER")
{
$reference=$_GET['reference'];
$nb=1;
$prix=$_GET['prix'];
$liste[]=array($reference,$nb,$prix,$prix);
$_SESSION['liste']=$liste;
}

//MODIF
if ($modifPanier=="ACTUALISER")
{
for ($i=0;$i<count($liste);$i++)
{
$nbi='nb'.$i;
$liste[$i][1]=$_GET["$nbi"];
$liste[$i][3]=$liste[$i][1]*$liste[$i][2];
}
$_SESSION['liste']=$liste;
}


//COMMANDER
if ($enregistreCommande=="COMMANDER")
{
if(!isset($_GET['action']))
$_SESSION['action']="ENREGISTRER";
header("Location: commande.php");
}
?>


<form name="form" method="get" action="cart.php">

<?php
$total=0.00;
for ($i=0;$i<count($liste);$i++)
{
$query_rsPanier="select * from shp_articles where reference = '".$liste[$i][0]."'";
//echo $query_rsPanier;
$rsPanier = mysql_query($query_rsPanier, $connCat) or die(mysql_error());
$row_rsPanier = mysql_fetch_assoc($rsPanier);
?>

<?php echo $row_rsPanier['titre'] ?></div>

<select name="nb<?php echo $i ?>" id="nb">
<option value="1" <?php if($liste[$i][1]==1) echo "SELECTED"; ?>>1</option>
<option value="2" <?php if($liste[$i][1]==2) echo "SELECTED"; ?>>2</option>
<option value="3" <?php if($liste[$i][1]==3) echo "SELECTED"; ?>>3</option>
<option value="4" <?php if($liste[$i][1]==4) echo "SELECTED"; ?>>4</option>


<?php echo $row_rsPanier['prix'] ?>
<a href="cart.php?suppPanier=SUPPRIMER&article=<?php echo $row_rsPanier['reference'] ?>">



<?php

$total+=$row_rsPanier['prix'] * $liste[$i][1];
}
$_SESSION['total']=$total;

?>


<?php echo $total ?>


<input type="submit" name="modifPanier" value="Actualiser">
<input name="enregistreCommande" type="submit" value="Commander">

</table>
</form>
Si Dieu existe, j'espère qu'il a une bonne excuse -woody allen-
i M@N
le 21/05/2006 à 19:03
i M@N
Reuh ...

J't'aime bien tu sais ... smiley
<?php
if ($ajoutPanier=="AJOUTER")/* Où est-ce que tu initialises $ajoutPanier ? oÔ */
{
$reference=$_GET['reference'];/* Où est-ce que tu initialises $reference ?? oÔ */
$nb=1;
$prix=$_GET['prix'];/* Où est-ce que tu initialises $prix ??? oÔ */
$liste[]=array($reference,$nb,$prix,$prix);
$_SESSION['liste']=$liste;
}

//COMMANDER
if ($enregistreCommande=="COMMANDER")
{
if(!isset($_GET['action'])) /* Où est-ce que tu initialises $action ???? oÔ */
$_SESSION['action']="ENREGISTRER";
header("Location: commande.php");
}

/*etc ...*/

?>
<a href="cart.php?suppPanier=SUPPRIMER&article=<?php echo $row_rsPanier['reference'] ?>">


Mais tu devrais remplacer tes
<?php

if(!isset($_GET['modifPanier'])) $modifPanier="";
else $modifPanier=$_GET['modifPanier'];

if(!isset($_GET['enregistreCommande'])) $enregistreCommande="";
else $enregistreCommande=$_GET['enregistreCommande'];

?>

par :
<?php
if(!isset($_GET['action'])) $action="";
else $action=$_GET['action'];

?>

Puis faire des liens genre :
<a href="cart.php?action=SUPPRIMER&article=<?php echo $row_rsPanier['reference'] ?>">clic</a>

et des formulaires style :
<form name="action" method="get" action="cart.php">
<input type="submit" name="action" value="Actualiser">
</form>

<form name="action" method="get" action="cart.php">
<input name="action" type="submit" value="Commander">
</form>

Comme ça tu utilises une seule variable.

J'ai pas compris à quoi sert $liste[$i][1]=$_GET["$nbi"]; dans Actualiser. smiley

Au final ça doit ressembler à ça :
<?php

if(!isset($_GET['action'])) $action=""; else $action=$_GET['action'];

//AJOUT PANIER
if ($action=="Ajouter")
{
/*on récupère la variable issue de $_GET et on l'initialise*/
if (isset($_GET['reference'])) $reference = $_GET['reference']; else $reference = "";
$nb=1;
/*on récupère la variable issue de $_GET et on l'initialise*/
if (isset($_GET['prix'])) $prix = $_GET['prix']; else $prix = "";
$liste[]=array($reference,$nb,$prix,$prix);
$_SESSION['liste']=$liste;
}

//MODIF
if ($action=="Actualiser")
{
for ($i=0;$i<count($liste);$i++)
{
$nbi='nb'.$i;
/*là je pige pas à quoi sert / d'où sort le $_GET["$nbi"];*/
$liste[$i][1]=$_GET["$nbi"];
$liste[$i][3]=$liste[$i][1]*$liste[$i][2];
}
$_SESSION['liste']=$liste;
}


//COMMANDER
if ($action=="Commander")
{
header("Location: commande.php");
}
?>


<form name="form" method="get" action="cart.php">

<?php
$total=0.00;
for ($i=0;$i<count($liste);$i++)
{
$query_rsPanier="select * from shp_articles where reference = '".$liste[$i][0]."'";
//echo $query_rsPanier;
$rsPanier = mysql_query($query_rsPanier, $connCat) or die(mysql_error());
$row_rsPanier = mysql_fetch_assoc($rsPanier);
?>

<?php echo $row_rsPanier['titre'] ?></div>

<select name="nb<?php echo $i ?>" id="nb">
<option value="1" <?php if($liste[$i][1]==1) echo "SELECTED"; ?>>1</option>
<option value="2" <?php if($liste[$i][1]==2) echo "SELECTED"; ?>>2</option>
<option value="3" <?php if($liste[$i][1]==3) echo "SELECTED"; ?>>3</option>
<option value="4" <?php if($liste[$i][1]==4) echo "SELECTED"; ?>>4</option>


<?php echo $row_rsPanier['prix'] ?>
<a href="cart.php?action=Supprimer&article=<?php echo $row_rsPanier['reference'] ?>">Supprimer</a>

<?php

$total+=$row_rsPanier['prix'] * $liste[$i][1];
}
$_SESSION['total']=$total;

echo $total;

?>
</form>

<form name="action" method="get" action="cart.php">
<input type="submit" name="action" value="Actualiser">
</form>
<form name="action" method="get" action="cart.php">
<input name="action" type="submit" value="Commander">
</form>

</table>


Continue, il est pas mal ton code. smiley

@+...
One Love, One Heart, One Unity.
Répondre
LoadingChargement en cours