coment passer données via Url ?
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-
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.
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.
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-
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.
Ouais ... j'avais oublié $
bah!
Si Dieu existe, j'espère qu'il a une bonne excuse -woody allen-
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-
le 21/05/2006 à 17:08
i M@N
Reuh ...
Mais arrête avec tes
<?php echo $_GET['reference']; ?>
non d'une pipe !
<?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.
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-
le 21/05/2006 à 19:03
i M@N
Reuh ...
J't'aime bien tu sais ...
<?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.
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.
@+...
One Love, One Heart, One Unity.