Fichier vide
Fermé
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
-
16 mai 2008 à 09:10
missjack Messages postés 10 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 18 novembre 2013 - 26 mai 2008 à 14:27
missjack Messages postés 10 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 18 novembre 2013 - 26 mai 2008 à 14:27
A voir également:
- Fichier vide
- Fichier rar - Guide
- Fichier host - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier iso - Guide
8 réponses
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
16 mai 2008 à 09:47
16 mai 2008 à 09:47
Bonjour.
C'est du php ?
Le problème est là :
SI (AFFECTER "" à $mesvaleur)
ALORS AFFECTER $mesvaleur (qui vaut donc "") à $varw
C'est une faute courante (quand j'ai un bug, c'est le premier truc que je vérifie :-O )
Pour effectuer une comparaison, il faut un double égal.
if ($mesvaleur == "")
C'est du php ?
if ($mesvaleur = "") { $varw = $mesvaleur; }
Le problème est là :
SI (AFFECTER "" à $mesvaleur)
ALORS AFFECTER $mesvaleur (qui vaut donc "") à $varw
C'est une faute courante (quand j'ai un bug, c'est le premier truc que je vérifie :-O )
Pour effectuer une comparaison, il faut un double égal.
if ($mesvaleur == "")
merci pour cette réponse aussi rapide mais g fait une bourde :( ce n'est pas
if ($mesvaleurs ="")
{
$var = $mesvaleur;
}
mais if ($valeurs != "")
{
$var = $mesvaleur;
}
et même en mettant un == cela ne fonctionne pas non plus
if ($mesvaleurs ="")
{
$var = $mesvaleur;
}
mais if ($valeurs != "")
{
$var = $mesvaleur;
}
et même en mettant un == cela ne fonctionne pas non plus
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
16 mai 2008 à 13:52
16 mai 2008 à 13:52
Pour débugger, mets des echo régulièrement, pour voir le contenu de tes variables.
Juste avant le 2ème point, affiche la valeur de $varw, et après affiche le contenu de $char et $enreg (voire des autres variables)...
Au niveau de ta Mise en forme, tu essaies de faire quoi, au juste ? J'ai l'impression que tu te compliques la vie, là...
Juste avant le 2ème point, affiche la valeur de $varw, et après affiche le contenu de $char et $enreg (voire des autres variables)...
Au niveau de ta Mise en forme, tu essaies de faire quoi, au juste ? J'ai l'impression que tu te compliques la vie, là...
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
20 mai 2008 à 15:35
20 mai 2008 à 15:35
Voila j'ai trouvé d'ou vient le problème lorsque je fais un echo sur mon switch, ma variable $varw récupère bien les infos dans la table et les affiche mais lorsque je fais un echo sur $varw dans mon if : là ma variable $varw est vide ; elle ne renvoie rien du tout . Je ne vois pas d'ou vient le problème , peut etre manque-t-il un bout de code qui permettrait de récupérer les infos de ma variable $varw dans mon switch?
Pour répondre à ta question macgawel , ma fonction est censée afficher les infos les unes en dessous des autres selon la longueur qui est indiquée dans ma table en gros cela donne :
1 nom de l'emmeteur
2 siret de la societe
.....
et ce n'est pas moi qui veut le faire comme ca c'est mon patron .
voila si quelqu'un à une solution ce serait vraiment géniale , pendant ce temps la je continue de chercher.
Pour répondre à ta question macgawel , ma fonction est censée afficher les infos les unes en dessous des autres selon la longueur qui est indiquée dans ma table en gros cela donne :
1 nom de l'emmeteur
2 siret de la societe
.....
et ce n'est pas moi qui veut le faire comme ca c'est mon patron .
voila si quelqu'un à une solution ce serait vraiment géniale , pendant ce temps la je continue de chercher.
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
20 mai 2008 à 15:48
20 mai 2008 à 15:48
Essayes de faire :
Tout ton code est bien dans le même fichier ?
if ($mesvaleur != "") { echo $mesvaleur; $varw = $mesvaleur; echo $varw; }
Tout ton code est bien dans le même fichier ?
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
>
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
26 mai 2008 à 10:21
26 mai 2008 à 10:21
le problème vient de ma variable $varw , elle est remplie dans mon switch mais elle est vide dans mon if.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oui tout mon code est bien dans le même fichier ; de plus je précise une petite chose dans ma table j'ai une colonne MESVALEUR et une MESCODE . Dans la colonne MESVALEUR , je n'ai qu'une seule valeur D1 et dans la colonne MESVALEUR j'ai toutes les valeurs qui sont dans le switch. Le but de mon ficher est que selon les infos de mon switch je récupère des infos par rapport à celle-ci dans d'autre table.
J'ai tester ce que tu m'a dis mais j'avais déjà essayer et il me retourne seulement la valeur D1 qui est dans la colonne MESVALEUR et $varw est vide.
Voila en espérant que cela t'éclaire un peu car moi je sèche.
J'ai tester ce que tu m'a dis mais j'avais déjà essayer et il me retourne seulement la valeur D1 qui est dans la colonne MESVALEUR et $varw est vide.
Voila en espérant que cela t'éclaire un peu car moi je sèche.
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
26 mai 2008 à 10:33
26 mai 2008 à 10:33
Est-ce que tu peux faire un copier-coller de ton code, histoire d'avoir ce qui est vraiment demandé ?
Parce que tu donnes :
puis
Sinon, rajoute dans ton code des echo et donne le résultat:
Parce que tu donnes :
if ($mesvaleur = "") { $varw = $mesvaleur; }
puis
mais if ($valeurs != "") { $var = $mesvaleur; }
Sinon, rajoute dans ton code des echo et donne le résultat:
$req = "SELECT * FROM messagese,oa,societe WHERE MESCODE='$mescode' AND MESTYPENR='type1' AND OANOA='$noa'"; $res = mysql_query($req) or die ("erreur $req "); while($mes = mysql_fetch_object($res)) { // 1°) Remplissage de la valeur du champ // ----------------------------------------------------------------------- $mesvaleur = $mes->MESVALEUR; $mescode = $mes->MESCODE; $socTabEm = array(); $socTabEm = getSociete($chargeur); $cdeTabEm = array(); $cdeTabEm = getCommande($cdeId); switch($mescode) { ... } echo "varw après le switch = ".$varw.". "; if ($mesvaleur != "") { echo "varw dans le IF = ".$varw." Et mesvaleur = '.$mesvaleur.". "; $varw = $mesvaleur; echo "varw après l'affectation = ".$varw.". "; } echo "varw après le IF = ".$varw.". ";
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
26 mai 2008 à 11:04
26 mai 2008 à 11:04
merci beaucoup pour ta patience :)
voila ce que j'obtient en mettant les echo que tu suggère :
varw après le switch = . varw dans le IF = Et mesvaleur = D1. varw après l'affectation = . varw après le IF = .
et voila le code avec les echos que tu m'as suggèré de mettre(désolé je viens de me rendre compte que je l'ai pas recopié comme il faut : )
echo "varw après le switch = ".$varw.". ";
if ($mesvaleur != "")
{
echo "varw dans le IF = ".$varw." Et mesvaleur = ".$mesvaleur.". ";
$mesvaleur = $varw ;
echo "varw après l'affectation = ".$varw.". ";
}
echo "varw après le IF = ".$varw.". ";
voila ce que j'obtient en mettant les echo que tu suggère :
varw après le switch = . varw dans le IF = Et mesvaleur = D1. varw après l'affectation = . varw après le IF = .
et voila le code avec les echos que tu m'as suggèré de mettre(désolé je viens de me rendre compte que je l'ai pas recopié comme il faut : )
echo "varw après le switch = ".$varw.". ";
if ($mesvaleur != "")
{
echo "varw dans le IF = ".$varw." Et mesvaleur = ".$mesvaleur.". ";
$mesvaleur = $varw ;
echo "varw après l'affectation = ".$varw.". ";
}
echo "varw après le IF = ".$varw.". ";
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
26 mai 2008 à 11:17
26 mai 2008 à 11:17
Déjà, la variable $varw n'est pas affectée dans ton SWITCH, vu que tu as :
varw après le switch = .
Mets, avant le SWITCH un echo :
Soit ta variable $mescode n'a pas de correspondance dant ton SWITCH CASE, soit l'affectation ($varw = $socTabEm[6]; ) est foireuse.
Et tu as bien copié/collé le code ? Parce que là :
c'est encore autre chose que tu fais...
varw après le switch = .
Mets, avant le SWITCH un echo :
echo 'mescode = '.$mescode; switch($mescode) {...
Soit ta variable $mescode n'a pas de correspondance dant ton SWITCH CASE, soit l'affectation ($varw = $socTabEm[6]; ) est foireuse.
Et tu as bien copié/collé le code ? Parce que là :
$mesvaleur = $varw ;
c'est encore autre chose que tu fais...
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
26 mai 2008 à 11:33
26 mai 2008 à 11:33
ok j'essaie ca et oui j'ai inverser c'est bien $varw = $mesvaleur; et non pas $mesvaleur = $varw;
comme j'ai faits des tests j'avais inverser les deux pour voir si cela changer quelque chose.
comme j'ai faits des tests j'avais inverser les deux pour voir si cela changer quelque chose.
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
26 mai 2008 à 11:38
26 mai 2008 à 11:38
j'ai essayer et j'obtient ceci :
mescode = varw
donc je suppose que ma variable $mescode est égale à $varw mais c'est pas logique vu que dans ma table ma colonne $mescode à des valeurs de saisies , ca devrait me renvoyer les valeurs de ma table logiquement?
mescode = varw
donc je suppose que ma variable $mescode est égale à $varw mais c'est pas logique vu que dans ma table ma colonne $mescode à des valeurs de saisies , ca devrait me renvoyer les valeurs de ma table logiquement?
macgawel
Messages postés
664
Date d'inscription
mercredi 7 mai 2008
Statut
Membre
Dernière intervention
1 novembre 2008
89
26 mai 2008 à 11:59
26 mai 2008 à 11:59
Si tu as bien codé echo 'mescode = '.$mescode; et que tu obtiens mescode = varw , ça veut dire que $mescode = 'varw' (la variable $mescode contient la chaîne de caractères 'varw') ?!
Donc, on reprend les chose dans l'orde :
1. Regarde comment est faite ta requête, et passe-la dans phpMyAdmin :
Vérifie dans phpMyAdmin que ta requête rend bien le résultat que tu veux.
Il y a peut-être un problème dessus (auquel cas tu ne passerais pas dans ta boucle WHILE).
J'aurais tendance à l'écrire plutôt :
2.
Donc, on reprend les chose dans l'orde :
1. Regarde comment est faite ta requête, et passe-la dans phpMyAdmin :
$req = "SELECT * FROM messagese,oa,societe WHERE MESCODE='$mescode' AND MESTYPENR='type1' AND OANOA='$noa'"; echo $req.'<br />';
Vérifie dans phpMyAdmin que ta requête rend bien le résultat que tu veux.
Il y a peut-être un problème dessus (auquel cas tu ne passerais pas dans ta boucle WHILE).
J'aurais tendance à l'écrire plutôt :
$req = "SELECT * FROM messagese,oa,societe WHERE MESCODE='".$mescode."' AND MESTYPENR='type1' AND OANOA='".$noa."'";
2.
$mesvaleur = $mes->MESVALEUR; echo $mesvaleurs.'<br />'; $mescode = $mes->MESCODE; echo $mescode.'<br />';
missjack
Messages postés
10
Date d'inscription
mercredi 14 mai 2008
Statut
Membre
Dernière intervention
18 novembre 2013
26 mai 2008 à 14:27
26 mai 2008 à 14:27
allelua je commence à voir le bout du tunnel grace à toi en fait cela vient de $mescode car dans ma table sql dans la colonne $mescode les champs ne sont pas tous remplis, en changeant de colonne dans ma table ca m'affiche ce que je veux.
Le seul soucis qu'il me reste c'est qu'il ne prend en compte que la première ligne de ma table , il ignore les autres .
Et quand je fait un echo sur ma requête il ne prend pas en compte la valeur $mescode , j'obtient ceci:
SELECT * FROM messagese,oa,societe WHERE MESCODE='' AND MESTYPENR='type1' AND OANOA='16770'D1
il faudrait peut être que j'enlève ma condition MESCODE='$mescode' dans ma requête pour qu'il prenne toutes les lignes de ma table?
Le seul soucis qu'il me reste c'est qu'il ne prend en compte que la première ligne de ma table , il ignore les autres .
Et quand je fait un echo sur ma requête il ne prend pas en compte la valeur $mescode , j'obtient ceci:
SELECT * FROM messagese,oa,societe WHERE MESCODE='' AND MESTYPENR='type1' AND OANOA='16770'D1
il faudrait peut être que j'enlève ma condition MESCODE='$mescode' dans ma requête pour qu'il prenne toutes les lignes de ma table?