je poste ce topic car je suis actuellement dans une impasse.
Je suis entrain de crée un site de e-commerce (je precise pour un devoir comme cela c'est dit ).
Or j'ai actuellement un soucis avec mon panier.
J'ai crée celui-ci
<?php if(session_id()=='') { session_start(); } // TOUJOURS EN HAUT DE SCRIPT
header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8
// --------------------------------------
// protection page membre
// --------------------------------------
// si session vide = PAS connecté
if( empty($_SESSION['user']['login']) )
{
// on redirige
header('location:../elements_inchangeables/connexion/connexion.php'); // OU redirection vers le formualire de CONNEXION !
exit;
}
?>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!-- Déclaration du type de document -->
<!------------------------------------------------------------------------------------------------------------------------------------>
<!DOCTYPE HTML>
<html>
<head>
<title>selection_jeux</title>
</head>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!-- debut du contenu de la partie sombre -->
<!------------------------------------------------------------------------------------------------------------------------------------>
<?php
//<!------------------------------------------------------------------------------------------------------------------------------------>
// <!-- on verifie que les info est etait transmissent -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
if
(
!empty($_POST['id'])
)
{
//<!------------------------------------------------------------------------------------------------------------------------------------>
//<!-- si oui, on les renomment -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
$id_jeu_select= $_POST['id'];
$dossier=$_POST['dossier'];
echo
$dossier
;
$dossier='jeux_d_aventures';
//<!------------------------------------------------------------------------------------------------------------------------------------>
// Récupération des informations du fichier blocnote (fichier txt).
//<!------------------------------------------------------------------------------------------------------------------------------------>
//$fileHandle = fopen($dossier, "r+");
$fileHandle = fopen("../../../txt/genre/".$dossier.".txt", "r+");
//<!------------------------------------------------------------------------------------------------------------------------------------>
// <!-- Ouverture du fichier "jeux_d_aventures.txt"
//<!------------------------------------------------------------------------------------------------------------------------------------>
if ($fileHandle)
{
?>
<form name="selection" id="achat" action="achat_jeux.php" method="post" enctype="multipart/form-data">
<table width="100%"style="color=#FFFFFF">
<thead>
<tr style="height: 16px" align="center">
<td>
<font class="font_p" color="#5d8eb3">
<b>
image
</b>
</font>
</td>
<td>
<font class="font_p" color="#5d8eb3">
<b>
nom_du_jeu
</b>
</font>
</td>
<td>
<font class="font_p" color="#5d8eb3">
<b>
prix
</b>
</font>
</td>
<td >
<font class="font_p" color="#5d8eb3">
<b>
confirmer achat
</b>
</font>
</td>
</tr>
</thead>
<?php
//<!------------------------------------------------------------------------------------------------------------------------------------>
// Lecture des lignes du fichier, une par une.
//<!------------------------------------------------------------------------------------------------------------------------------------>
while (($buffer = fgets($fileHandle, 4096)) !== false)
{
//<!------------------------------------------------------------------------------------------------------------------------------------>
// Lecture des lignes du fichier, une par une. -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
list(
$id,
$nom,
$date_sortie ,
$nom_image ,
$choix ,
$prix ,
$quantite )
= explode('|', $buffer);
//<!------------------------------------------------------------------------------------------------------------------------------------>
// Séparation des données de la ligne en cours en fonction du caractère "|". -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
if (in_array($id,$id_jeu_select))
{
$total[]=$prix;
//<!------------------------------------------------------------------------------------------------------------------------------------>
//<!-- on affiche les infos des jeux dans chaque ligne du tableau-->
//<!------------------------------------------------------------------------------------------------------------------------------------>
?>
<tbody>
<tr style="height: 16px" align="center">
<td>
<img src="<?php echo $nom_image; ?>">
</td>
<td>
<?php
echo
"<FONT color='black'>".$nom. "</FONT>"
;
?>
</td>
<td>
<?php
echo
"<FONT color='black'>".$prix."€". "</FONT>"
;
?>
</td>
<td>
<?php
echo
"<input type='checkbox' name='id[]' value='".$id."'>"
;
?>
</td>
</tr>
</tbody>
<?php
}
}
//<!------------------------------------------------------------------------------------------------------------------------------------>
// on incrémente l'index
//<!------------------------------------------------------------------------------------------------------------------------------------>
fclose($fileHandle);
//<!------------------------------------------------------------------------------------------------------------------------------------>
// fermeture du fichier -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
}
?>
<tfoot>
<tr style="height: 16px" align="center">
<td colspan=3>
</td>
<td>
<font class="font_p" color="#5d8eb3">
<b>
total
</b>
</font>
</td>
</tr>
<tr style="height: 16px" align="center">
<td colspan=3>
<input type="submit" value="confirmer" name="select"/ onClick="valider()">
</td>
<td>
<?php
echo
array_sum($total) . "€\n"
;
?>
</td>
</tr>
</tfoot>
</table>
<?php
}
else
{
//<!------------------------------------------------------------------------------------------------------------------------------------>
//<!-- si il manque des variables on indique qu'il y a un probleme -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
echo
'
<TABLE BORDER="0" width= 80% align="center">
<tbody>
<tr align="center" width="1300">
<td colspan="2" >
<div>
<FONT color="black">
votre panier est vide
</FONT>
</br>
</div>
<input type="button" name="Accueil" value="Fermer" onClick="window.close()"/>
</td>
</tr>
</tbody>
</TABLE>
';
}
?>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!-- fin du contenu de la partie sombre -->
<!------------------------------------------------------------------------------------------------------------------------------------>
</div>
</html>
qui renvoie a une page qui doit logiquement:_1)modifier la quantité de mes produits achetés
_2) qui doit enregistrer dans un fichier.txt l'id de l'utilisateur et l'id de mon produit
pour ce faire j'ai codé ce code
<?php if(session_id()=='') { session_start(); } // TOUJOURS EN HAUT DE SCRIPT
header('Content-type:text/html; charset=UTF-8'); // encodage UTF-8
// --------------------------------------
// protection page membre
// --------------------------------------
// si session vide = PAS connecté
if( empty($_SESSION['user']['login']) )
{
// on redirige
header('location:../elements_inchangeables/connexion/connexion.php'); // OU redirection vers le formualire de CONNEXION !
exit;
}
?>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!-- Déclaration du type de document -->
<!------------------------------------------------------------------------------------------------------------------------------------>
<!DOCTYPE HTML>
<html>
<head>
<title>selection_jeux</title>
</head>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!-- debut du contenu de la partie sombre -->
<!------------------------------------------------------------------------------------------------------------------------------------>
<?php
//<!------------------------------------------------------------------------------------------------------------------------------------>
// <!-- on verifie que les info est etait transmissent -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
if
(
!empty($_POST['id'])
)
{
//<!------------------------------------------------------------------------------------------------------------------------------------>
//<!-- si oui, on les renomment -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
$id_membre= $_SESSION['user']['id'];
$id_jeu_select =$_POST['id'];
$dossier=$_POST['dossier'];
for ($i=0;$i<count($_POST['id']);$i++)
{
$id_jeu= $_POST['id'][$i];
$achat = fopen("../../../txt/genre/achat/".$dossier.".txt", "r+");
file_put_contents("../../../txt/Fichier_user.txt",
$id_jeu.'|'.
$id_membre."\r\n",FILE_APPEND);
}
$fileHandle = fopen("../../../txt/genre/".$dossier.".txt", "r+");
//<!------------------------------------------------------------------------------------------------------------------------------------>
// <!-- Ouverture du fichier "jeux_d_aventures.txt"
//<!------------------------------------------------------------------------------------------------------------------------------------>
if ($fileHandle)
{
// --------------
// Initialisation
$les_lignes = '';
$lignes_array = array();
$saut = "\r\n"; // saut de ligne
// --------------
// on parcourt les lignes du fichier txt
while(!feof($fileHandle))
{
$ligne = fgets($fileHandle); // $ligne -> chaine
$ligne = trim( $ligne ); // on supprime le saut de ligne à la fin
$cette_ligne = explode('|', $ligne); // $cette_ligne -> array
// --------------
//<!------------------------------------------------------------------------------------------------------------------------------------>
if( $id_jeu_select == $cette_ligne[0] ) // si on est sur la bonne ligne (id_user OK)
{
$new_ligne= array();
$new_ligne[0]= $cette_ligne[0];
$new_ligne[1]= $cette_ligne[1];
$new_ligne[2]= $cette_ligne[2];
$new_ligne[3]= $cette_ligne[3];
$new_ligne[4]= $cette_ligne[4];
$new_ligne[5]= $cette_ligne[5];
$new_ligne[6]= $cette_ligne[6] - 1;
$lignes_array[] = implode( '|', $new_ligne ); // remplacement des données de cette ligne
$fileHandle = fopen("../../../txt/genre/achat/Fichier_achat.txt", "r+");
$id_utilisateur=$_SESSION['user']['id'];
$achat = fopen("../../../txt/genre/achat/genre/".$dossier.".txt", "r+");
file_put_contents("../../../txt/genre/achat/genre/".$dossier.".txt",
$id_utilisateur.'|'.
$cette_ligne[0] .'|'.
FILE_APPEND);
exit();
}
else
{
$lignes_array[] = $ligne ; // on conserve la ligne
}
}
// --------------
$les_lignes = implode ( $saut, $lignes_array ); // on regroupe toutes les lignes (en ajoutant les sauts de ligne)
// --------------
}
fclose($fileHandle);
$fileHandle = fopen("../../../txt/genre/".$dossier.".txt", 'w+');
fputs($fileHandle, $les_lignes); // on écrit toutes les lignes dans le fichier txt
fclose($fileHandle);
echo
'
<td colspan="2" >
<input type="button" name="Accueil" value="Fermer" onClick="window.close()"/>
</td>
';
exit;
}
else
{
//<!------------------------------------------------------------------------------------------------------------------------------------>
//<!-- si il manque des variables on indique qu'il y a un probleme -->
//<!------------------------------------------------------------------------------------------------------------------------------------>
echo
'
<TABLE BORDER="0" width= 80% align="center">
<tbody>
<tr align="center" width="1300">
<td colspan="2" >
<div>
<FONT color="black">
votre panier est vide
</FONT>
</br>
</div>
<input type="button" name="Accueil" value="Fermer" onClick="window.close()"/>
</td>
</tr>
</tbody>
</TABLE>
';
}
?>
<!------------------------------------------------------------------------------------------------------------------------------------>
<!-- fin du contenu de la partie sombre -->
<!------------------------------------------------------------------------------------------------------------------------------------>
</div>
</html>
le soucis, étant que le 1er code ne change rien du tout ( la quantité ne diminue pas ).et le second lui ne fait rien du tout ^^". (RESOLU)
si quelqu'un aurait un conseil , une solution , une direction pour que je trouve une solution a me conseillé je lui en serais gréé.
Merci d'avance