fichier : achat/modeles/produits_details.php

7 messages dans ce sujet

Posté(e) · Signaler ce message

Salut a tous :D

Je suis en train de modifier peelshopping en y adaptant un nouveau theme, et j'ai quelques problemes pour récuperer des fonctions présentes dans les fichiers d'origines.

;) Ah oui j'allais oublier je suis un noob en php j'entends par la que je ne connais que les base du codage php (pour l'instant je prévilégie la crea de code via dreamweaver.

Je me suis donc créé une fiche produit en chageant l'aspect par rapport a la version d'origine, j'ai aussi rajouté des champs dans la table peel_produit. J'ai rajouté 13 champs (rien que ca :D ), car les produits que je vais mettre sont en fait des kit de produits et il était important de pouvoir détailler chaque produit dans la fiche du kit dont il fait parti. Voici les champs que j'ai rajouté :

plus_prod01

plus_prod02

protocole

protoappli

prod01_titre

prod01_txt

prod02_titre

prod02_txt

prod03_titre

prod03_txt

img_prod01

img_prod02

img_prod03

Voila j'ai biensur gardé les champs d'origine. Voici mon fichier modifié :

<?php require_once('connect_bdd.php'); ?>

<?php

mysql_select_db($database_connect_bdd, $connect_bdd);

$query_Recordset1 = "SELECT * FROM peel_produits WHERE";

$Recordset1 = mysql_query($query_Recordset1, $connect_bdd) or die(mysql_error());

$row_Recordset1 = mysql_fetch_assoc($Recordset1);

$totalRows_Recordset1 = mysql_num_rows($Recordset1);

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Document sans titre</title>

</head>

<body>

<?php

$DOC_TITLE = "[Fiche Produit -- LABORATOIRES RENOPHASE --]";

?>

<link href="../../lib/css/jaune.css" rel="stylesheet" type="text/css">

<table width="743" border="0" align="center" cellspacing="0" bgcolor="#FFFFFF">

<tr>

<td width="743" height="48">

<div class="titre_prod"><?php echo $row_Recordset1['nom']; ?></div>

</td>

</tr>

<tr>

<td>

<table width="100%">

<tr >

<td width="355" rowspan="6" valign="bottom"><img src="<?php echo $row_Recordset1['image1']; ?>" /></td>

<td width="39" height="5"> </td>

<td width="311" height="5"> </td>

<td width="10" rowspan="6"> </td>

</tr>

<tr >

<td height="37" "puce_prod">

<img src="../../images/fiche_prod_bloc_prix_06.jpg" width="39px" height="37px"> </td>

<td height="37">

<div class="plusprod"><?php echo $row_Recordset1['plus_prod01']; ?></div> </td>

</tr>

<tr >

<td colspan="2" height="6"> </td>

</tr>

<tr >

<td class="puce_prod"><img src="../../images/fiche_prod_bloc_prix_06.jpg" width="39px" height="37px"></td>

<td><div class="plusprod"><?php echo $row_Recordset1['plus_prod02']; ?></div></td>

</tr>

<tr >

<td colspan="2" height="21"> </td>

</tr>

<tr >

<td colspan="2" background="../../images/fiche_prod_bloc_prix_12.jpg" height="57">

<div class="form_prod"><form method="post" action="<?php echo $wwwroot?>/achat/caddie_ajout.php" name="ajout<?php echo $prod['id'] ?>">

<span class="txt_contenu">Quantité : </span>

<select name="qte" class="formulaire1">

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

<option value="4">4</option>

<option value="5">5</option>

</select>

<input type="hidden" name="id" value="<?php echo $prod['id'] ?>" />

<a class="normal" href="java script:document.ajout<?php echo $prod['id'] ?>.submit()">

<img src="<?php echo $wwwroot?>/images/caddie.gif" align="absmiddle" alt="" border="0" /> </a>

<a class="normal" href="java script:document.ajout<?php echo $prod['id'] ?>.submit()">

Ajouter au caddie </a>

</form></div> </td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<div> </div>

</td>

</tr>

<tr>

<td>

<div class="protocole">Protocole :</div>

<div class="txt_contenu_pro"><?php echo $row_Recordset1['protocole']; ?></div>

<div class="protocole">Protocole d'Application</div>

<div class="txt_contenu_pro_end"><?php echo $row_Recordset1['protoappli']; ?></div>

</td>

</tr>

<tr>

<td>

<div class="seperate"><strong>Détails des produits contenu dans le kit</strong></div>

</td>

</tr>

<tr>

<td>

<table width="100%" border="0" cellspacing="0">

<tr>

<td width="80%" valign="top">

<div class="s-titre_prod"><?php echo $row_Recordset1['prod01_titre']; ?></div>

<div class="txt_contenu_pro_end"><?php echo $row_Recordset1['prod01_txt']; ?></div>

</td>

<td width="20%" valign="middle"><img src="<?php echo $row_Recordset1['img-prod1']; ?>" />

</td>

</tr>

<tr>

<td>

<div> </div>

</td>

</tr>

<tr>

<td valign="top">

<div class="s-titre_prod"><?php echo $row_Recordset1['prod02_titre']; ?></div>

<div class="txt_contenu_pro_end"><?php echo $row_Recordset1['prod02_txt']; ?></div>

</td>

<td valign="middle"><img src="<?php echo $row_Recordset1['img_prod02']; ?>" /></td>

</tr>

<tr>

<td>

<div> </div>

</td>

</tr>

<tr>

<td valign="top">

<div class="s-titre_prod"><?php echo $row_Recordset1['prod03_titre']; ?></div>

<div class="txt_contenu_pro"><?php echo $row_Recordset1['prod03_txt']; ?></div>

</td>

<td valign="top">

<img src="<?php echo $row_Recordset1['img_prod03']; ?>" /> </td>

</tr>

</table>

</td>

</tr>

</table>

</body>

</html>

<?php

mysql_free_result($Recordset1);

?>

Si vous voulez voir : http://www.renophase.fr/pub/boutique/index.php

Mon seul probleme c'est que je n'arrive pas a récuperer la fonction qui selectionne l'id pour n'afficher que les info du produit concerné. Si quelqu'un peut me donner un peu d'aide svp !

Merci d'avance et bonne continuation a tous :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

un souci dans la construction de la requete

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Effectivement ^^, j'ai vu que dans le fichier d'origine il y a ce code :

$select = mysql_query("

SELECT

p.id,

p.nom,

p.image1,

p.prix,

pr.reference_id

FROM

peel_produits p

,peel_produits_references pr

WHERE p.id = pr.reference_id

AND pr.produit_id = '".$prod['id']."'

");

Est ce bien cette requete qui selectionne le produit par rapport a l'id selectionné ???

J'aia vu qu'une deuxième table était utilisée la ,peel_produits_references pr, j'ai été voir dans ma bdd a quoi correspondait cette table mais je n'ai aucune valeur dedans. Est ce normal ?!

Bon j'ai essayé de changer la requete comme ceci :

$select = mysql_query("

SELECT

p.id,

p.nom,

p.image1,

p.prix,

p.plus_prod01,

p.plus_prod02

p.protocole

p.protoappli

p.prod01_titre

p.prod01_txt

p.prod02_titre

p.prod02_txt

pr.reference_id

FROM

peel_produits p

,peel_produits_references pr

WHERE p.id = pr.reference_id

AND pr.produit_id = '".$prod['id']."'

");

J'ai biensur changer les $row_Recordset1 présents dans mon fichier en $select, j'ai aussi supprimé l'entete xhtml.

Mais cela ne fonctionne pas soit (sans le changement des $row_Recordset1) c'est toujours le premier produit (dans la bdd) qui est selectionné et du coup ce sont ces info qui sont transmisent ou sinon (avec changement) plus rien ne s'affiche ;) .

Est ce que quelqu'un peut m'aider a reformuler cette requete pour qu'elle fonctionne :D

J'ai l'impression qu'il manque une requete pour récupérer l'id selectionné dans la page d'avant mais je ne sais pas comment la formuler :D

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

EDIT :

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

En réobservant bien les fichiers d'origine j'ai vu qu'il valait mieux faire appel a la variable $prod que $select. Donc j'ai changé toutes les variables dans mon fichier et lors de mon test O MIRACLE ^^ l'image du produit s'affiche mais seulement l'image les autres champs ne se charge pas (c'est un début déjà ^^).

Mais je galère toujours sur le reste....

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

Il faut mettre une virgule après chaque champ

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Effectivement je m'en suis rendu compte en relisant le mess que j'ai posté, mais meme après l'avoir fait j'ai toujours le meme probleme :

Je n'ai que le champs image qui veut bien s'afficher ;)

Voici mon fichier mise a jour :

<?php

$DOC_TITLE = "[Fiche Produit -- LABORATOIRES RENOPHASE --]";

$select = mysql_query("

SELECT

p.id,

p.nom,

p.image1,

p.prix,

p.plus_prod01,

p.plus_prod02,

p.protocole,

p.protoappli,

p.prod01_titre,

p.prod01_txt,

p.prod02_titre,

p.prod02_txt,

p.prod03_titre,

p.prod03_txt,

p.img_prod01,

p.img_prod02,

p.img_prod03,

pr.reference_id,

FROM

peel_produits p,

peel_produits_references pr

WHERE p.id = pr.reference_id

AND pr.produit_id = '".$prod['id']."'

");

?>

<link href="../../lib/css/jaune.css" rel="stylesheet" type="text/css">

<table width="743" border="0" align="center" cellspacing="0" bgcolor="#FFFFFF">

<tr>

<td width="743" height="48">

<div class="titre_prod"><?php echo $prod['nom']; ?></div>

</td>

</tr>

<tr>

<td>

<table width="100%">

<tr >

<td width="355" rowspan="6" valign="bottom"><img src="<?php echo $prod['image1']; ?>" /></td>

<td width="39" height="5">&nbsp;</td>

<td width="311" height="5">&nbsp;</td>

<td width="10" rowspan="6">&nbsp;</td>

</tr>

<tr >

<td height="37" "puce_prod">

<img src="../../images/fiche_prod_bloc_prix_06.jpg" width="39px" height="37px"> </td>

<td height="37">

<div class="plusprod"><?php echo $prod['plus_prod01']; ?></div> </td>

</tr>

<tr >

<td colspan="2" height="6">&nbsp;</td>

</tr>

<tr >

<td class="puce_prod"><img src="../../images/fiche_prod_bloc_prix_06.jpg" width="39px" height="37px"></td>

<td><div class="plusprod"><?php echo $prod['plus_prod02']; ?></div></td>

</tr>

<tr >

<td colspan="2" height="21">&nbsp;</td>

</tr>

<tr >

<td colspan="2" background="../../images/fiche_prod_bloc_prix_12.jpg" height="57">

<div class="form_prod"><form method="post" action="<?php echo $wwwroot?>/achat/caddie_ajout.php" name="ajout<?php echo $prod['id'] ?>">

<span class="txt_contenu">Quantité : </span>

<select name="qte" class="formulaire1">

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

<option value="4">4</option>

<option value="5">5</option>

</select>

<input type="hidden" name="id" value="<?php echo $prod['id'] ?>" />

<a class="normal" href="java script:document.ajout<?php echo $prod['id'] ?>.submit()">

<img src="<?php echo $wwwroot?>/images/caddie.gif" align="absmiddle" alt="" border="0" /> </a>

<a class="normal" href="java script:document.ajout<?php echo $prod['id'] ?>.submit()">

Ajouter au caddie </a>

</form></div> </td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<div>&nbsp;</div>

</td>

</tr>

<tr>

<td>

<div class="protocole">Protocole :</div>

<div class="txt_contenu_pro"><?php echo $prod['protocole']; ?></div>

<div class="protocole">Protocole d'Application</div>

<div class="txt_contenu_pro_end"><?php echo $prod['protoappli']; ?></div>

</td>

</tr>

<tr>

<td>

<div class="seperate"><strong>D&eacute;tails des produits contenu dans le kit</strong></div>

</td>

</tr>

<tr>

<td>

<table width="100%" border="0" cellspacing="0">

<tr>

<td width="80%" valign="top">

<div class="s-titre_prod"><?php echo $prod['prod01_titre']; ?></div>

<div class="txt_contenu_pro_end"><?php echo $prod['prod01_txt']; ?></div>

</td>

<td width="20%" valign="middle"><img src="<?php echo $prod['img-prod1']; ?>" />

</td>

</tr>

<tr>

<td>

<div>&nbsp;</div>

</td>

</tr>

<tr>

<td valign="top">

<div class="s-titre_prod"><?php echo $prod['prod02_titre']; ?></div>

<div class="txt_contenu_pro_end"><?php echo $prod['prod02_txt']; ?></div>

</td>

<td valign="middle"><img src="<?php echo $repertoire_images.$prod['img_prod02']; ?>" /></td>

</tr>

<tr>

<td>

<div>&nbsp;</div>

</td>

</tr>

<tr>

<td valign="top">

<div class="s-titre_prod"><?php echo $prod['prod03_titre']; ?></div>

<div class="txt_contenu_pro"><?php echo $prod['prod03_txt']; ?></div>

</td>

<td valign="top">

<img src="<?php echo $repertoire_images.$prod['img_prod03']; ?>" /> </td>

</tr>

</table>

</td>

</tr>

</table>

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonsoir,

A première vue après avoir fait ta requête, tu devrais faire un :

$prod=mysql_fetch_array($select) pour te positionner sur l'enregistrement de l'article en

question et si tu en as plusieurs, il faut faire une boucle While

Regarde la page index.php à la racine d'un site peel standard (dans l'archive de distribution),

tu auras un exemple simple

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Ok merci, je viens de regarder et j'ai trouvé ca :

while ($prod = mysql_fetch_array($qid))

{

if ( $j % $nb_colonnes == 0 ) {

echo "<tr valign=\"top\">";

}

if($j % $nb_colonnes !=0 OR $j % $nb_colonnes == 0 ) {

// on affiche une cellule

echo "<td class=\"petit\" width=\"33%\">";

?>

En fait c'est la manière de faire la requete qui me pose probleme, le code que tu m'as donné :

$prod=mysql_fetch_array($select)

Veut dire en fait d'aller chercher ce qui est contenu dans select (qui lui dit de selectionner les info relative à l'id selectionné). Donc normalement meme avec + d'un produit ca devrait marcher aussi, non ???

J'ai bien plusieurs produit, j'en ai pas énormément non plus (5 au total) et je ne vois pas trop comment faire cette boucle while :D , je vais essayer de trouver des exemples sur le net et je reposterais mes essais après ;)

En tout cas merci de m'avoir répondu :D

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping