Ses derniers messages sur les forums
One Love, One Heart, One Unity.
Hello !
Bon je veux bien t'aider mais stp fais un effort et LiS ce que je dis, y compris dans les commentaires de ton code.
Ton code :
<?php
//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"];//recup du nbr d'article dans la liste
$liste[$i][3]=$liste[$i][1]*$liste[$i][2];
}
$_SESSION['liste']=$liste;
}
?>
Ce que tu comprends :
Si j'ai correctement écris et bien compris, a chaque boucle $nbi prend la valeur de la concatenation du prefixe nb et de l’indice $i
la concatenation se realise avec $nbi=nb.$i permet la récup des articles selectionés dans le menu deroulant et l’affecte a la variable de la liste adhoc
...
$_GET["$nbi"];/*recup du nbr d'article dans la liste*/
FAUX : ça récupère kedal, t'as pas initialisé ta variable $nbi issue de $_GET, elle vaut "". Même pas "0", elle vaut rien, elle est vide.
Donc :
- soit tu l'initialises avant de t'en servir (je crois pas que ça soit ce que tu veuilles faire) :
<?php
/*on récupère la variable issue de $_GET et on l'initialise*/
if (isset($_GET['nbi'])) $nbi = $_GET['nbi']; else $nbi = "";/*recup du nbr d'article dans la liste*/
?>
- soit tu lui donnes une valeur au cours de ton script (je pense que c'est ce que tu as besoin) :
<?php
$nbi='nb'.$i;
$liste[$i][1]=$nbi;/*recup du nbr d'article dans la liste*/
?>
Mais tu fais pas les deux, sinon ça serait comme faire $variable = "1"; $variable ="2";.
@+...
One Love, One Heart, One Unity.
Reuh ...
Bon on continue demain, mais d'ici là réponds aux questions que je t'ai posé stp :
Je veux bien t'aider mais faut en dire un peu plus ... Pourquoi ça affiche pas ? c'est quand $action == "Actualiser" que s'est censé afficher quelque chose ??
Sinon j'ai toujours pas compris ça :
<?php
$nbi='nb'.$i; /*là je pige pas à quoi sert / d'où sort le $_GET["$nbi"];*/
$liste[$i][1]=$_GET["$nbi"];//recup du nbr d'article dans la liste
?>
Pourquoi $liste[$i][1]=$_GET["$nbi"] si $nbi='nb'.$i; ... c'est pas logique : soit $nbi vient de $_GET soit tu le définis en cours de script mais pas les deux.

En plus, où est-ce que tu initialises ta variable $nbi issue de $_GET ???
Donc donne un peu plus d'explications stp, on a pas tout ton code sous les yeux et on connait pas le reste de ton panier.
Bonne nuit, @ demain ...
One Love, One Heart, One Unity.
Reuh ...
Je veux bien t'aider mais faut en dire un peu plus ... Pourquoi ça affiche pas ? c'est quand $action == "Actualiser" que s'est censé afficher quelque chose ??
Sinon j'ai toujours pas compris ça :
<?php
$nbi='nb'.$i; /*là je pige pas à quoi sert / d'où sort le $_GET["$nbi"];*/
$liste[$i][1]=$_GET["$nbi"];//recup du nbr d'article dans la liste
?>
Pourquoi $liste[$i][1]=$_GET["$nbi"] si $nbi='nb'.$i; ... c'est pas logique : soit $nbi vient de $_GET soit tu le définis en cours de script mais pas les deux.

En plus, où est-ce que tu initialises ta variable $nbi issue de $_GET ???
Donc donne un peu plus d'explications stp, on a pas tout ton code sous les yeux et on connait pas le reste de ton panier.
@+...
One Love, One Heart, One Unity.
Reuh ...
Ben tu fais avec un cookie sur l'ordi ...
http://littlekeny.free.fr/Tutos/cookies.html
@+...
One Love, One Heart, One Unity.
One Love, One Heart, One Unity.
Hello !
C'est un truc à faire avec les sessions je pense.
Je ferai une case à cocher "se souvenir de moi" à côté du formulaire de log-in et si cette case est cochée, au traitement des données de log-in j'ajouterai une variable de session $autolog = "true" une fois le membre identifié par une variable de session $logged = "1".
Ensuite sur la page du formulaire de log-in je testerai la variable de session $autolog, si elle est égale à "true" alors je mets la variable de session $logged à "1", la case à cocher "checked" et le visiteur est loggué.
Tout cela ne fonctionne que si le navigateur est resté ouvert, pour faire en sorte que ça fonctionne si le navigateur a été fermé il faudra passer par les cookies sur l'ordi du visiteur mais il devra activer ses cookies et faudra mettre les variables de sessions en variables de cookie.
Espérant que ça t'aide ...
@+...
One Love, One Heart, One Unity.
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.
Hello !
Bon ce vieux code tout moisi j'en suis l'auteur, à la base je suis parti du
comment faire un forum de LA_GLOBULE et j'ai adapté pour en faire un multi-forum.
Y'a 2 erreurs dedans :
D'abord la déclaration de la fonction sscanf() dont l'utilisation a été modifiée dans les dernières versions de php,
il faut enlever les & :
<?php
sscanf($date_derniere_reponse, "%4s-%2s-%2s %2s:%2s", $annee, $mois, $jour, $heure, $minute);
?>
Ensuite dans le fichier insert_forum_traitement.php ligne 28
il faut remplacer :
<?php
/*lancement de la requête d'insertion (pour la table forum_sujets)*/
$sql = "INSERT INTO forum VALUES('','$titre')";
?>
par
<?php
/*on recupere la date de l'instant présent*/
$date = date("Y-m-d H:i:s");
/*lancement de la requête d'insertion (pour la table forum_sujets)*/
$sql = "INSERT INTO forum
VALUES('','$titre','$date')";
?>
Désolé, j'avais codé trop vite.
@+...
One Love, One Heart, One Unity.
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.