alimentation variable

Répondre
lolipops
le 19/02/2005 à 03:09
lolipops
Bonjour à tous,

j'ai un probleme sur le script suivant :
mon wall

Ce script (qui fonctionne en local) est ma page de recherche multicriteres.
Le formulaire est alimenté par ma base.
(les variables hors formulaire sont definies dans config.php)

le bouton submit envoie les valeurs du formulaire a la meme page et doit alimenter la variable $cherche qui sert à 2 choses :

1/ requete pour compter les sites issus des criteres,
ce chiffre est affiché dans la meme page près du bouton submit et si il est superieur à 0 on affiche un lien vers la page de resultat

2/ alimenter la variable de session qui servira à la requete d'affichage sur la page de resultat

En local tout va bien mais sur mon serveur, la variable $cherche reste vide.
J'ai essayé de la declarer de façon simplifié pour tester avec un critère fixe (du style : $cherche='critere1=Videos';
Et là MYSTERE elle reste totalement vide !!!

Je viens de retourner le script dans tous les sens en simplifiant au max chaque partie et trouver ce qui ne va pas mais rien a faire ... $cherche reste vide !

Arf j'ai besoin de votre aide !!!!

Merci pour toutes vos infos les gars et A++
Pas douée mais acharnée
lolipops
le 20/02/2005 à 09:29
lolipops
Coucou j'ai desesperement besoin d'aide les gars merci de toutes infos sur la bourde que j'ai commise en redigeant ce script ...
Merci
Pas douée mais acharnée
Bzh
le 20/02/2005 à 10:59
Bzh
Donnes un peu plus de détails !!!

C' est quoi comme type de variable !!!

$_POST $_GET ????

Fais tu des print ou des echo régulièrement dans ton code pour vérifier ta variable ????
Bzh
le 20/02/2005 à 11:06
Bzh
Juste avant

<?php
$_SESSION['cherche'] = '';
$_SESSION['cherche'] = $cherche;
?>


Tu peu faire

<?php
echo $cherche; exit();
?>


Et je te coneille fortement de remplacer :

<?php

if ($billing5 != '') $cherche .= ' AND billing5="'.$billing5.'"';
else $cherche .= ' AND billing5 IS NOT NULL';

?>


par

<?php

if (!empty($billing5)) $cherche .= ' AND billing5="'.$billing5.'"';
else $cherche .= ' AND billing5 IS NOT NULL';

?>
bibi
le 20/02/2005 à 14:07
bibi
Bzh je te dirais meme de rajouter des accolades
if ( ... )
{
...
}
else
{
...
}

c'est beaucoup plus lisible :)
commit suicide
Bzh
le 20/02/2005 à 14:31
Bzh
Oui mais j' ai fait un copié collé !!!

Direct !!!

Mais je suis tout à fait d' accor avec toi !!!

smiley
lolipops
le 21/02/2005 à 22:11
lolipops
Coucou,

la methode est post et en fait j'en suis meme pas a la declaration de la session...
c'est avant que ca deconne car avant d'envoyer le visiteur sur la page de resultat et d'utiliser la session, je lui affiche sur la page en cours le nombre de sites comptés en fonction de ses criteres enregistrés dans $cherche.

Exemple de test que j'ai fait :
dans ma requete j'utilise un critere fixe qui est valid="'.$valid.'"
J'ai essayé de definir ce critere comme contenu de depart fixe de $cherche auquel j'ajoutais la suite,
mais au final $cherche ne contient meme pas cette donnée pourtant define "en dur".($cherche = 'valid="valid"';)
j'ai une erreur sql qui m'indique que le WHERE est vide.
quelque soit le contenu et la façon de definir (dur ou dynamique ou post) $cherche reste vide...

Je vais commencer par suivre vos conseils et voir si en rajoutant quelques accolades ca change quelquechose, et je vais essayer avec GET.

Merci pour vos reponses A+
Pas douée mais acharnée
bibi
le 21/02/2005 à 22:35
bibi
je n'ai pas encore regardé ton code mais deja

include(''.$pageconnexion.'');


remplace le par :

include($pageconnexion);
commit suicide
bibi
le 21/02/2005 à 22:37
bibi
et si tu déclares
$chercher = ''; au début de ton script, car tu concatènes en faisant $cherche .= ... mais au premier appel , $cherche n'est pas défini
commit suicide
Répondre
LoadingChargement en cours