Pb au niveau de caddie
Posté : 17 mai 2010, 07:55
J'essaye de reprendre une veille application e-commerce que j'ai developpé en 2003 avec l'installation de easyphp 1.4
Aujourd'hui ayant oublié un peu PHP j'ai vu que ca evolué beaucoup au niveau des fonctions. Et mon appli ne fonctionne plus !
Il s'agit d'un site e-commerce "vente de materiels informatiques" donc PHP/Mysql
Gestion de materiel, affichage du matos enregistré au niveau de la base de donnée, enregistrement (pareil pour les user)
Pour l'instant j'en suis a l'etape de l'ajout d'un materiel au caddie
Je sais plus comment faire pour gerer le caddie ajouter/modifier (mon code ne fonctionne pas) :
Les page php concernées sont : liste_peripherique.php, detail_piece.php, ajout_caddie.php et voir_caddie.php
Est ce que vous pouvez m'aider svp
et voici le code :
########################liste_peripherique.php###############################
<?php
session_start();
require ('bordure_haut.inc');
?>
<html>
<head><title>Bienvenue sur la page d'authentification de notre site Avisen.com</title></head>
<body background="" bgcolor='aliceblue' >
<br>
<font color='rosybrown' align='left'><h2>Acceuil > Périphériques</h2></font>
<br>
<?php
//on se connecte à la base de donnée
$db = mysql_connect('localhost','root','') or die ("erreur de connexion");
//selection de vôtre base de donnée
mysql_select_db('Avisen',$db) or die ("erreur de connexionbase");
//la requète de selection des messages
$req = mysql_query("SELECT * from Materiel where Materiel.Type='Peripheriques' order by date_achat desc ") or die ("erreur requete");
//on ressort le contenu en boucle, et on stock dans un tableau avec mysql_fetch_array
print "<table border='0' bgcolor='' ordercolor='0' cellspacing='0'><caption><tr>";
print '<tr>';
$i=1;
while(( $contenu = mysql_fetch_array ($req) ) && $i<5)
{
print "<th width='25%' align='center'><a href='detail_pieces.php?id=$contenu[id]'><img src='$contenu[Photo]' border='0' height='120' width='120' alt='Agrandir'></a><font color='#4B0082'><h4>$contenu[Libelle],$contenu[Marque], $contenu[Marque], $contenu[Caracterestique] </h4> </font></th>";
$i=$i+1;
}
print "</br></br>";
print "<table border='0' bgcolor='#4682B4' bordercolor='' cellspacing='0'><caption><tr>";
print "<th>Photo</th><th><b>Pièce</b></th><th><b>Marque</b></th><th><b>Disponibilité</b></th>";
print "<th><b>Prix vente</b></th><th><b>Caracterestique</b></th><th><b>Type</b></th><th>Acheter</th>";
print "</tr></body></html>";
//on se connecte à la base de donnée
$db = mysql_connect('localhost','root','') or die ("erreur de connexion");
//selection de vôtre base de donnée
mysql_select_db('Avisen',$db) or die ("erreur de connexionbase");
//la requète de selection des messages
$req = mysql_query("SELECT * from Materiel where Materiel.Type='Périphériques'") or die ("erreur requete");
//on ressort le contenu en boucle, et on stock dans un tableau avec mysql_fetch_array
$color1='aliceblue';
$color2='#D3DCE3';
while( $contenu = mysql_fetch_array ($req))
{
//on affiche le résultat
print '<tr>';
print "<td width='10%' bgcolor='$color1' align='center'><a href='$contenu[Photo]' target='contenu'><img src='$contenu[Photo]' border='0' height='40' width='40' alt='Agrandir'></a></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Libelle]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Marque]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center' ><h4>$contenu[Quantite]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Prix_vente] €</h4></td>";
print "<td width='40%' bgcolor='$color1' align='center'><h4>$contenu[Caracterestique]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Type]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><a href='detail_pieces.php?id=$contenu[id]'><img src='C:\Program Files\EasyPHP\www\Projet\images\panier.gif' border='0' height='30' width='30' alt='Commander'></a></td>";
$color3=$color2 ;
$color2=$color1 ;
$color1=$color3 ;
}
mysql_close();
print '</caption></table>';
require ('bordure_bas.inc');
?>
############################detail_piece.php##########################
<?php
session_start();
require ('bordure_haut.inc');
//if ( $_SESSION['session'] = FALSE)
//{
$id=$_GET['id'];
print "<body bgcolor='aliceblue'>";
print "</table></br></br></br>";
// 1. Connexion au SGBD MySQL
$db = mysql_connect('localhost','root','') or die ("erreur connexion");
// 2. Sélection de la base à utiliser
mysql_select_db('Avisen',$db) or die ('Erreur de connexion a la base');
// 3. Lancement de la requête
$req=mysql_query("select * from materiel where materiel.id='$id' ");
$total=0;
$contenu = mysql_fetch_array ($req);
//session_register('contenu');
//$_SESSION['contenu'];
print "<center>";
print "<table border='1' bgcolor='#00BFFF' cellspacing='5' cellspadding='5'>";
//on affiche le résultat
print "<td rowspan=5 align='center'><img src='$contenu[Photo]'height='200' width='200' alt='$contenu[Libelle]' align='center'></a></td>";
//print "<td ></td><td width='20%'><h4>Id : $contenu[id]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Libelle : $contenu[Libelle]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Caracterestique : $contenu[Libelle], $contenu[Marque], $contenu[Caracterestique]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Disponibilité : $contenu[Quantite]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Prix : $contenu[Prix_vente] €</h4></td></tr>";
//$total=$total+$contenu[Prix_vente];
print "</table></br></center>";
// 4. Libération de la connexion
mysql_close($db);
echo '<center><a href="ajout_caddie.php?id=$contenu[id]"><img border="0" src="image/bouton_page_ajout1.gif"/></a>';
echo '<a href="voir_caddie.php"><img border="0" src="image/voir_caddie.gif"/></a>';
echo '<a href="acceuil.php"><img border="0" src="image/retour.gif"/></a></center>';
//}
//else
//{
//print "<font bgcolor='blue'><b>Merci de bien vouloir acceder au site depuis votre //compte.Merci<b></font>";
//print "<br><br><br><br>";
//require ('login.php');
//print "<br><br><br><br>";
//}
require ('bordure_bas.inc');
?>
################ajout_caddie.php############################
<?php
session_start();
global $Montant_total_caddie;
$id=$_GET['id']
// On s'assure qu'il ya bien une pieces dans la session (sinon, l'utilisateur a du appuyé
// sur la touche actualiser dans son navigateur )
//if ( session_is_registered('contenu') )
//{
// Si aucun caddie n'existait jusque la , on en crée un
// if ( !session_is_registered('caddie') )
// {
//$caddie=array();
$quantite_caddie=0;
$Prix_vente=0.00;
// $_session['caddie'];
// $_session['id'];
// $_session['quantite_caddie'];
// $_session['Prix_caddie'];
// }
// Mise a jour du caddie dans la session (si le caddie existe deja on incremente le caddie de 1)
if ( isset ($caddie[$contenu['id']]) )
$caddie[$contenu['id']]['quantite']++;
else //sinon il faur creer le caddie et metant la quantite a un et en enregistrant les parametre du caddie
$caddie[$contenu['id']]=array('id'=>$contenu[id], 'Photo'=>$contenu[Photo],'Libelle'=>$contenu[Libelle],'Marque'=>$contenu[Marque], 'Caracterestique'=>$contenu[Caracterestique], 'quantite'=>1, 'Prix_vente'=>$contenu['Prix_vente']);
$quantite_caddie++;
$Montant_total_caddie=$Montant_total_caddie+$contenu['Prix_vente'];
//}
// Affichage du caddie
require_once('voir_caddie.php');
?>
#######################voir_caddie.php##################################
<?php
session_start();
require ('bordure_haut.inc');
//on supprime la pieces dans la session (sil en ya un , on en a plus besoin, )
//unset ($_session['contenu']);
// Affichage du caddie si ce dernier a été crée, c.a.d si au moin une pieces lui a été ajouté
//if (session_is_registered('caddie') )
if(!empty($_SESSION['caddie']))
{
// Mise a jour du montant du caddie avant d'afficher l'entete de la page
$montant_caddie =0.00;
while (list($id, $contenu)=each($caddie))
$Prix_vente += $contenu['quantite'] * $contenu[Prix_vente];
reset ($caddie);//mis a jour du caddie
require ('haut_de_page.php');
print "<table border='1' bgcolor='aliceblue' cellspacing='3'><caption><tr>";
print "</table>";
print "<font color ='blue' align ='center'><h1>Votre caddie</h1></font>";
print "<body bgcolor='aliceblue'>";
print "</table></br></br></br>";
print "<table border='1' bgcolor='#87CEFA' bordercolor='0' cellspacing='3' align='center'><caption><tr>";
print "<th width='10%'>id</th><th width='10%'>Photo</th><th width='25%'>Libellé</th><th width='50%'>Caracterestisues</th><th width='10%'>Quantité</th></td>";
print "<th width='20%'>Prix (TTC)</th><th width='5%'>Supprimer</th></tr>";
$color1='#00BFFF';
$color2='#87CEFA';
while(list($id, $contenu)= each($caddie))
{
//on affiche le résultat
print '<tr>';
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[id]</h4></th>";
print "<td width='10%' bgcolor='$color1' align='center'><a href='$contenu[Photo]' target='contenu'><img src='$contenu[Photo]' border='0' height='40' width='40' alt='Agrandir'></a></th>";
print "<td width='30%' bgcolor='$color1' align='center'><h4>$contenu[Libelle]</h4></th>";
print "<td width='50%' bgcolor='$color1' align='center'><h4>$contenu[Libelle], $contenu[Marque], $contenu[Caracterestique]</h4></th>";
print "<td width='10%' bgcolor='$color1' align='center'><h4><table border=0 >";
print "<td rowspan=2><input type='text' name='Nom' value='$contenu[quantite]'></td>";
print "<td><a href='addition.php?id=$contenu[id]'><img border=0 src='C:\Program Files\EasyPHP\www\Projet\IMAGES\quantite_plus.bmp'></td></a></tr>";
print "<tr><td><a href='soustraction.php?id=$contenu[id]'><img border=0 src='C:\Program Files\EasyPHP\www\Projet\IMAGES\quantite_moin.bmp'></a></td></tr>";
print "</table>";
print "</h4></th>";
print "<td width='20%' bgcolor='$color1' align='center'><h4>$contenu[Prix_vente] €</h4></th>";
print "<td width='10%' bgcolor='$color1' align='center'><a href=''><img src='images/delete.gif' border='0' height='20' width='20' alt='supprimer'></a></th>";
print "</tr>";
$color3=$color2 ;
$color2=$color1 ;
$color1=$color3 ;
}
print '</table></br>';
$total=$total+$contenu[Prix_vente];
print "<table border='0' bgcolor='#B0C4DE' bordercolor='0' cellspacing='3' align='right'><caption><tr>";
print '</table></br>';
}
else // Si ya rien dans le caddie
{
echo "Votre caddie est vide : il ne contient aucun materiel.</br>";
exit;
}
print "<center><table border='0' color='aliceblue' cellspacing='3'><caption><tr>";
echo '<tr><td><center><a href="acheter_caddie.php?montant=$total"><img src="image/bouton_page_achat1.gif" border="0"/></a></center></td>'.
'<td><center><a href="vider_caddie.php"><img src="image/bouton_page_vider.gif" border="0"/></a></center></td><td><center><a href="acceuil.php"><img src="image/retour.gif" border="0"/></a></center></td></tr>';
print '</table></center>';
require ('bordure_bas.inc');
?>
Aujourd'hui ayant oublié un peu PHP j'ai vu que ca evolué beaucoup au niveau des fonctions. Et mon appli ne fonctionne plus !
Il s'agit d'un site e-commerce "vente de materiels informatiques" donc PHP/Mysql
Gestion de materiel, affichage du matos enregistré au niveau de la base de donnée, enregistrement (pareil pour les user)
Pour l'instant j'en suis a l'etape de l'ajout d'un materiel au caddie
Je sais plus comment faire pour gerer le caddie ajouter/modifier (mon code ne fonctionne pas) :
Les page php concernées sont : liste_peripherique.php, detail_piece.php, ajout_caddie.php et voir_caddie.php
Est ce que vous pouvez m'aider svp
et voici le code :
########################liste_peripherique.php###############################
<?php
session_start();
require ('bordure_haut.inc');
?>
<html>
<head><title>Bienvenue sur la page d'authentification de notre site Avisen.com</title></head>
<body background="" bgcolor='aliceblue' >
<br>
<font color='rosybrown' align='left'><h2>Acceuil > Périphériques</h2></font>
<br>
<?php
//on se connecte à la base de donnée
$db = mysql_connect('localhost','root','') or die ("erreur de connexion");
//selection de vôtre base de donnée
mysql_select_db('Avisen',$db) or die ("erreur de connexionbase");
//la requète de selection des messages
$req = mysql_query("SELECT * from Materiel where Materiel.Type='Peripheriques' order by date_achat desc ") or die ("erreur requete");
//on ressort le contenu en boucle, et on stock dans un tableau avec mysql_fetch_array
print "<table border='0' bgcolor='' ordercolor='0' cellspacing='0'><caption><tr>";
print '<tr>';
$i=1;
while(( $contenu = mysql_fetch_array ($req) ) && $i<5)
{
print "<th width='25%' align='center'><a href='detail_pieces.php?id=$contenu[id]'><img src='$contenu[Photo]' border='0' height='120' width='120' alt='Agrandir'></a><font color='#4B0082'><h4>$contenu[Libelle],$contenu[Marque], $contenu[Marque], $contenu[Caracterestique] </h4> </font></th>";
$i=$i+1;
}
print "</br></br>";
print "<table border='0' bgcolor='#4682B4' bordercolor='' cellspacing='0'><caption><tr>";
print "<th>Photo</th><th><b>Pièce</b></th><th><b>Marque</b></th><th><b>Disponibilité</b></th>";
print "<th><b>Prix vente</b></th><th><b>Caracterestique</b></th><th><b>Type</b></th><th>Acheter</th>";
print "</tr></body></html>";
//on se connecte à la base de donnée
$db = mysql_connect('localhost','root','') or die ("erreur de connexion");
//selection de vôtre base de donnée
mysql_select_db('Avisen',$db) or die ("erreur de connexionbase");
//la requète de selection des messages
$req = mysql_query("SELECT * from Materiel where Materiel.Type='Périphériques'") or die ("erreur requete");
//on ressort le contenu en boucle, et on stock dans un tableau avec mysql_fetch_array
$color1='aliceblue';
$color2='#D3DCE3';
while( $contenu = mysql_fetch_array ($req))
{
//on affiche le résultat
print '<tr>';
print "<td width='10%' bgcolor='$color1' align='center'><a href='$contenu[Photo]' target='contenu'><img src='$contenu[Photo]' border='0' height='40' width='40' alt='Agrandir'></a></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Libelle]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Marque]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center' ><h4>$contenu[Quantite]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Prix_vente] €</h4></td>";
print "<td width='40%' bgcolor='$color1' align='center'><h4>$contenu[Caracterestique]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[Type]</h4></td>";
print "<td width='10%' bgcolor='$color1' align='center'><a href='detail_pieces.php?id=$contenu[id]'><img src='C:\Program Files\EasyPHP\www\Projet\images\panier.gif' border='0' height='30' width='30' alt='Commander'></a></td>";
$color3=$color2 ;
$color2=$color1 ;
$color1=$color3 ;
}
mysql_close();
print '</caption></table>';
require ('bordure_bas.inc');
?>
############################detail_piece.php##########################
<?php
session_start();
require ('bordure_haut.inc');
//if ( $_SESSION['session'] = FALSE)
//{
$id=$_GET['id'];
print "<body bgcolor='aliceblue'>";
print "</table></br></br></br>";
// 1. Connexion au SGBD MySQL
$db = mysql_connect('localhost','root','') or die ("erreur connexion");
// 2. Sélection de la base à utiliser
mysql_select_db('Avisen',$db) or die ('Erreur de connexion a la base');
// 3. Lancement de la requête
$req=mysql_query("select * from materiel where materiel.id='$id' ");
$total=0;
$contenu = mysql_fetch_array ($req);
//session_register('contenu');
//$_SESSION['contenu'];
print "<center>";
print "<table border='1' bgcolor='#00BFFF' cellspacing='5' cellspadding='5'>";
//on affiche le résultat
print "<td rowspan=5 align='center'><img src='$contenu[Photo]'height='200' width='200' alt='$contenu[Libelle]' align='center'></a></td>";
//print "<td ></td><td width='20%'><h4>Id : $contenu[id]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Libelle : $contenu[Libelle]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Caracterestique : $contenu[Libelle], $contenu[Marque], $contenu[Caracterestique]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Disponibilité : $contenu[Quantite]</h4></td></tr>";
print "<td ></td><td width='70%'><h4>Prix : $contenu[Prix_vente] €</h4></td></tr>";
//$total=$total+$contenu[Prix_vente];
print "</table></br></center>";
// 4. Libération de la connexion
mysql_close($db);
echo '<center><a href="ajout_caddie.php?id=$contenu[id]"><img border="0" src="image/bouton_page_ajout1.gif"/></a>';
echo '<a href="voir_caddie.php"><img border="0" src="image/voir_caddie.gif"/></a>';
echo '<a href="acceuil.php"><img border="0" src="image/retour.gif"/></a></center>';
//}
//else
//{
//print "<font bgcolor='blue'><b>Merci de bien vouloir acceder au site depuis votre //compte.Merci<b></font>";
//print "<br><br><br><br>";
//require ('login.php');
//print "<br><br><br><br>";
//}
require ('bordure_bas.inc');
?>
################ajout_caddie.php############################
<?php
session_start();
global $Montant_total_caddie;
$id=$_GET['id']
// On s'assure qu'il ya bien une pieces dans la session (sinon, l'utilisateur a du appuyé
// sur la touche actualiser dans son navigateur )
//if ( session_is_registered('contenu') )
//{
// Si aucun caddie n'existait jusque la , on en crée un
// if ( !session_is_registered('caddie') )
// {
//$caddie=array();
$quantite_caddie=0;
$Prix_vente=0.00;
// $_session['caddie'];
// $_session['id'];
// $_session['quantite_caddie'];
// $_session['Prix_caddie'];
// }
// Mise a jour du caddie dans la session (si le caddie existe deja on incremente le caddie de 1)
if ( isset ($caddie[$contenu['id']]) )
$caddie[$contenu['id']]['quantite']++;
else //sinon il faur creer le caddie et metant la quantite a un et en enregistrant les parametre du caddie
$caddie[$contenu['id']]=array('id'=>$contenu[id], 'Photo'=>$contenu[Photo],'Libelle'=>$contenu[Libelle],'Marque'=>$contenu[Marque], 'Caracterestique'=>$contenu[Caracterestique], 'quantite'=>1, 'Prix_vente'=>$contenu['Prix_vente']);
$quantite_caddie++;
$Montant_total_caddie=$Montant_total_caddie+$contenu['Prix_vente'];
//}
// Affichage du caddie
require_once('voir_caddie.php');
?>
#######################voir_caddie.php##################################
<?php
session_start();
require ('bordure_haut.inc');
//on supprime la pieces dans la session (sil en ya un , on en a plus besoin, )
//unset ($_session['contenu']);
// Affichage du caddie si ce dernier a été crée, c.a.d si au moin une pieces lui a été ajouté
//if (session_is_registered('caddie') )
if(!empty($_SESSION['caddie']))
{
// Mise a jour du montant du caddie avant d'afficher l'entete de la page
$montant_caddie =0.00;
while (list($id, $contenu)=each($caddie))
$Prix_vente += $contenu['quantite'] * $contenu[Prix_vente];
reset ($caddie);//mis a jour du caddie
require ('haut_de_page.php');
print "<table border='1' bgcolor='aliceblue' cellspacing='3'><caption><tr>";
print "</table>";
print "<font color ='blue' align ='center'><h1>Votre caddie</h1></font>";
print "<body bgcolor='aliceblue'>";
print "</table></br></br></br>";
print "<table border='1' bgcolor='#87CEFA' bordercolor='0' cellspacing='3' align='center'><caption><tr>";
print "<th width='10%'>id</th><th width='10%'>Photo</th><th width='25%'>Libellé</th><th width='50%'>Caracterestisues</th><th width='10%'>Quantité</th></td>";
print "<th width='20%'>Prix (TTC)</th><th width='5%'>Supprimer</th></tr>";
$color1='#00BFFF';
$color2='#87CEFA';
while(list($id, $contenu)= each($caddie))
{
//on affiche le résultat
print '<tr>';
print "<td width='10%' bgcolor='$color1' align='center'><h4>$contenu[id]</h4></th>";
print "<td width='10%' bgcolor='$color1' align='center'><a href='$contenu[Photo]' target='contenu'><img src='$contenu[Photo]' border='0' height='40' width='40' alt='Agrandir'></a></th>";
print "<td width='30%' bgcolor='$color1' align='center'><h4>$contenu[Libelle]</h4></th>";
print "<td width='50%' bgcolor='$color1' align='center'><h4>$contenu[Libelle], $contenu[Marque], $contenu[Caracterestique]</h4></th>";
print "<td width='10%' bgcolor='$color1' align='center'><h4><table border=0 >";
print "<td rowspan=2><input type='text' name='Nom' value='$contenu[quantite]'></td>";
print "<td><a href='addition.php?id=$contenu[id]'><img border=0 src='C:\Program Files\EasyPHP\www\Projet\IMAGES\quantite_plus.bmp'></td></a></tr>";
print "<tr><td><a href='soustraction.php?id=$contenu[id]'><img border=0 src='C:\Program Files\EasyPHP\www\Projet\IMAGES\quantite_moin.bmp'></a></td></tr>";
print "</table>";
print "</h4></th>";
print "<td width='20%' bgcolor='$color1' align='center'><h4>$contenu[Prix_vente] €</h4></th>";
print "<td width='10%' bgcolor='$color1' align='center'><a href=''><img src='images/delete.gif' border='0' height='20' width='20' alt='supprimer'></a></th>";
print "</tr>";
$color3=$color2 ;
$color2=$color1 ;
$color1=$color3 ;
}
print '</table></br>';
$total=$total+$contenu[Prix_vente];
print "<table border='0' bgcolor='#B0C4DE' bordercolor='0' cellspacing='3' align='right'><caption><tr>";
print '</table></br>';
}
else // Si ya rien dans le caddie
{
echo "Votre caddie est vide : il ne contient aucun materiel.</br>";
exit;
}
print "<center><table border='0' color='aliceblue' cellspacing='3'><caption><tr>";
echo '<tr><td><center><a href="acheter_caddie.php?montant=$total"><img src="image/bouton_page_achat1.gif" border="0"/></a></center></td>'.
'<td><center><a href="vider_caddie.php"><img src="image/bouton_page_vider.gif" border="0"/></a></center></td><td><center><a href="acceuil.php"><img src="image/retour.gif" border="0"/></a></center></td></tr>';
print '</table></center>';
require ('bordure_bas.inc');
?>