Aller au contenu

probleme d'affichage de fonction


gontran

Sujets conseillés

Bonjour,

Mon prblème est le suivant :

J'ai créée une fonction pour l'affichage de mon caddie :

function affichage_caddie_temp () {
 if (isset ($_SESSION['userok']))
 {
 $session=$_SESSION['userok'];
 //extraction de l'id du client
 $query05='SELECT COUNT(totalttc) as nb, SUM(totalttc) as total FROM comm_active WHERE id_cookie='.$session.'';
 $comma=mysql_query($query05);
 $ligne=mysql_fetch_array($comma);
 $somme=$lignecookie['total'];
 $nbrarticle=$lignecookie['nb'];
 echo '<ul class="menudroite">';
 echo '<li>Nombre d\'articles : '.$nbrarticle.'</li>';
 echo '<li> </li>';
 echo '<li>Total TTC : '.$somme.'</li>';
 echo '<li> </li>';
 echo '</ul>';
 }
 else {
 $id_cookie=$_COOKIE['session'];
 //extraction de l'id du cookie
 $query06='SELECT COUNT(totalttc) as nb, SUM(totalttc) as total FROM comm_active WHERE id_cookie='.$id_cookie.'';
 $commacookietemp=mysql_query($query06);
 $commacookie=mysql_fetch_array($commacookietemp);
 $somme=$commacookie['total'];
 $nbrarticle=$commacookie['nb'];
 echo '<ul class="menudroite">';
 echo '<li>Nombre d\'articles : <b>'.$nbrarticle.'</b></li>';
 echo '<li> </li>';
 echo '<li>Total TTC : <b>'.$somme.'</b></li>';
 echo '<li> </li>';
 echo '</ul>';
 
 }
 }

Quand je tape l'url de cette page directament dans mon navigateur (FireFox) la fonction tourne bien :

cmonweb.net/page/menudroite.php

Maintenant voila mùon probleme :

J'appelle la page qui contient ma fonction a l'aide d'un include et cette page me renvoi le message d'erreur suivant :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/gontran/www/scripts/scr_fonctions.php on line 267

Voici la ligne 267 :

$commacookie=mysql_fetch_array($commacookietemp);

Je comprend bien le message d'erreur mais ce que je ne comprend c'est que ca fonctionne sans include

cmonweb.net/

Quelqu'un pourrais m'aiguiller ?

Merci

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

Oui c'est normal il faut d'abord que tu passe par la home pour que ca te place le cookie

www.cmonweb.com

ensuite tu va ajouter un article par le biaie de la boutique présent sur le menu à gauche

et ensuite ca fonctionne en accés direct

Lien vers le commentaire
Partager sur d’autres sites

Heu, je suis embrumé, aujourd'hui, mais je me dis que l'erreur affichée dans la première url (voir mon précédent post) a la même cause que lors de l'entrée sur l'index de ton site.

Ta valeur id_cookie n'est pas encore renseigné, avec ou sans include, lorsque tu ouvres ces pages (pas encore de cookie). Donc ta requête retourne une erreur.

Comment les gères-tu ?

xpatval

Lien vers le commentaire
Partager sur d’autres sites

Je fais un setcookie sur la home qui lui donne un id et une date d'expiration.

le probleme c'est que sur mon poste ou il y a un cookie, ainsi que des commandes en attente dans la base de donnée avec comme identifiant le contenu de mon cookie.

Ca fonctionne quand j'appelle la page en direct.

Par contre il me retourne le message d'erreur quand j'affiche, par exemple la home de mon site, ou toute autre page d'ailleur.

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

Je fais un setcookie sur la home qui lui donne un id et une date d'expiration.

le probleme c'est que sur mon poste ou il y a un cookie, ainsi que des commandes en attente dans la base de donnée avec comme identifiant le contenu de mon cookie.

Pourtant il n'y a aucun enreg retourné par le SELECT. Donc soit le champ n'est pas renseigné, au moment de la requête, soit la requête n'est pas bonne.

Change celle-ci, d'ailleurs:

$query05="SELECT COUNT(totalttc) as nb, SUM(totalttc) as total FROM comm_active WHERE id_cookie='" .$session ."'";

et

$query06="SELECT COUNT(totalttc) as nb, SUM(totalttc) as total FROM comm_active WHERE id_cookie='" .$id_cookie ."'";

xpatval

Lien vers le commentaire
Partager sur d’autres sites

Voila ce que me ressort ma fonction quand je tape l'url suivante dans mon navigateur :

cmonweb.net/page/menudroite.php

Votre panier

* Nombre d'articles : 3

*

* Total TTC : 38.4

*

Donc ma fonction fonctionne.

Aprés quand je l'appelle via un include, je n'arrive plus a l'afficher ce résultat...

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

Donc ma fonction fonctionne.

Aprés quand je l'appelle via un include, je n'arrive plus a l'afficher ce résultat...

<{POST_SNAPBACK}>

Donc, elle ne fonctionne pas... ;)

L'erreur retournée par le SELECT indique que tu n'a aucun enregistrement correspondant à ta demande. Pourquoi ? parcequ'aucun champ ayant la valeur précisée n'est trouvé par la requête.

Modifié par xpatval
Lien vers le commentaire
Partager sur d’autres sites

Je vien d'aller tester mes pages dans un cybercafé

le résultat :

va ne fonctionne pas quand la page est appellée via un include

ca fonctionne quand tu l'appelle directement depuis la barre d'adresse du navigateur

de plus j'ai tester ma requete avec phpmyadmin et elle fonctionne, donc ce n'est pas un probleme de raquete mais bien un probleme de passage de variable dans un include

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

je cré un cookie avec la fonction setcookie

je lui donne un nom : session

je lui donne une valeur : chaine de chiffre aléatoire

et une date d'expiration : 15 jours

j'ai vérifier sur mon poste ca crée bien le cookie et quand je ferme mon navigateur et que je le redemarre sur ma home il ne me le change pas puisqu'il est encore valide

j'ai vérifier sur le poste du cybercafé et ca a fait la meme chose.

je te met le code qui genere mon cookie

function creation_cookie () {
 $number = "0123456789";
 $chaine = str_shuffle($number);
 $timestamp_expire = time() + 15*24*3600;
 $path=www.cmonweb.net;
 $domain=cmonweb.net;
 if(isset($_COOKIE['session'] )){
     $cookie=$_COOKIE['session'];}
 else {
 setcookie ('session', $chaine, $timestamp_expire);}
 return $id_cookie;
 }

le gros probleme est que je n'arrive pas a recuperer la valeur de ce cookie dans le include, par contre si je charge la page en direct y'a pas de soucie....

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

Pour info :

J'ai mis en place une lecture du cookie

Connectez vous sur cmonweb.net

Sur la partie centrale du site vous avez la valeur de votre cookie

Sur la partie qui contient le menu droit, donc a droite de la partie centrale, j'ai placer le meme code que celui présent sur la partie centrale, mais vous ne voyez pas la valeur du cookie.

Code pour afficher la valeur du cookie :

<? echo '
cookie : '.$id_cookie.''; ?>

Dons je pense que le probleme vient de là, je n'arrive pas a recuperer la valeur de mon cookie dans la partie droite qui est inserer par un "include".

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

Bon j'ai trouvé pourquoi ca ne marchais pas.

Ca venait de mes lignes de code.

Je faisais mes include de cette facon :

include ('http://xxxx.xxx/xxxx/xxxx.xxx');

Mais il fallais que je les fasse de cette facon :

include ('../xxx.xxx');

Merci a tous pour votrte aide

Modifié par gontran
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...