Php , script , condition

yohhann Messages postés 35 Statut Membre -  
Ssylvainsab Messages postés 2892 Statut Modérateur -
bonjour,
j'ai un petit probléme avec mon script
ce que je voudrais c'est une page ou lorsque l'on trouve dans la base de données des informations qui corespondent au mois a l'année d'aujourdhui et a une ville bien determiné que cela m'inscrive ces donné et autrement un message' pas de dons ce mois ci je vous met mon script
<?php
include("connexion.php");
?>
<?php
//on pose la date d'aujourdhui
$mois= date("m");
$annee= date("y");

//on selectione ce qu'on veut
$sql = 'SELECT dons, aqui FROM dons_tb WHERE mois="$mois" AND annee="$annee" AND ville="paris" ';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while ($data = mysql_fetch_array($req)) {

//conditions
if(data['dons']=="")
{
echo 'Auqun dons n\'a été fait ce mois-ci'
}
else
{

echo
Grâce à vous: <br>
'un dons de' .data['dons']. 'à été fait' .data['aqui'];
}
}
mysql_free_result ($req);
mysql_close ();
?>
il ya un pb a la ligne if( data['dons']=...
mais je ne pense pas que ce soit le seul pb car j'ai essayé ce script ci...

<?php
include("connexion.php");
?>
<?php
//on pose la date d'aujourdhui
$mois= date("m");
$annee= date("y");

//on selectione ce qu'on veut
$sql = 'SELECT dons, aqui FROM dons_tb WHERE mois="$mois" AND annee="$annee" AND ville="paris" ';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while ($data = mysql_fetch_array($req)) {
echo 'il ya un don de ' .$data['dons']. 'euros' .$data['aqui'];
}
mysql_free_result ($req);
mysql_close(); // On n'oublie pas de fermer la connexion à MySQL
?>
et la helas ça ne m'indique pas d'erreur mais une merveilleuse page blanche lol
merci
Configuration: Windows XP
Internet Explorer 6.0

10 réponses

  1. Profil bloqué
     
    corrige là d'abord:

    //conditions
    if(data['0']=="")
    {
    echo 'Auqun dons n\'a été fait ce mois-ci'
    }
    0
  2. Profil bloqué
     
    remplace cette ligne:
    while ($data = mysql_fetch_array($req)) {
    par ça c'est plus simple:
    while (mysql_num_rows($req)==1){

    "mysql_num_rows($req)",va tester eske le nombre de lignes obtenu est égal à 1(1 resultat).
    0
  3. yohhann Messages postés 35 Statut Membre 3
     
    non desolé ça ne marche pas

    //conditions
    if(data['0']=="")
    {
    echo 'Auqun dons n\'a été fait ce mois-ci'
    }
    ça marque une erreur a la meme ligne
    :(
    pour le 2eme scipt ça marche quand je remplave $mois par 12 et $annee par 06
    0
    1. Profil bloqué
       
      tu n'as pas mis le signe $ avant data,essai
      0
  4. yohhann Messages postés 35 Statut Membre 3
     
    super bien vu ;) merci
    mais le pb c'est que mon script est bouré d'erreur maintenant c'est 2 ligne en dessous que ça coince
    {
    echo 'Auqun dons n\'a été fait ce mois-ci'

    alors c'est surement a cause de ça:
    while (mysql_num_rows($req)==1){
    /
    while ($data = mysql_fetch_array($req)) {
    je sais pas trop ou le mettre il est a la bonne place?
    (enfin j'ai pas mis les 2 je les essayé tout les 2 )
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Salut.

    J'ai modifié le code, et corrigé quelques erreurs.
    (par exemple $data au lieu de data)

    Par contre je suis au lycée, donc je n'ai pas trop de bons outils.
    (C'est à dire : j'ai le bloc-notes)

    Voila ce que j'ai fait :
    <?php
    include'connexion.php';
    //on pose la date d'aujourdhui
    	$mois=date('m');
    	$annee=date('y');
    
    //on selectione ce qu'on veut
    	$sql='SELECT dons,aqui FROM dons_tb WHERE mois=\''.$mois.'\' AND annee=\''.$annee.'\' AND ville=paris'; 
    	$req=mysql_query($sql)or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
    while($data = mysql_fetch_assoc($req))
    { 
    	//conditions 
    	if(!$data['dons'])
    		echo'Aucun don n\'a été fait ce mois-ci';
    	else
    		echo'Grâce à vous:<br>'un dons de',$data['dons'].'à été fait',$data['aqui'];
    } 
    mysql_free_result ($req); 
    mysql_close(); 
    ?>

    J'éspère que ca marchera ;-)

    a plus
    0
  7. Profil bloqué
     
    respecte les points virgules:

    met ça
    while ($data = mysql_fetch_array($req))
    {
    //conditions
    if($data[0]=="")
    {
    echo "Auqun dons n\'a été fait ce mois-ci";
    }
    else
    {
    echo "Grâce à vous: <br>
    un dons de" .data[0]. "à été fait".data[1];
    }
    }
    0
  8. yohhann Messages postés 35 Statut Membre 3
     
    merci sylvain,
    t'avait oublié les guillemet entre paris et laissé une apostrophe
    echo'Grâce à vous:<br>'un dons de',$data['dons'].'à été fait',$data['aqui'];
    pas serieu! lool
    merci beaucoup ça marche niquel et merci aussi pour la syntaxe
    $sql='SELECT dons,aqui FROM dons_tb WHERE mois=\''.$mois.'\' AND annee=\''.$annee.'\' AND ville=paris';
    voilà,
    sinon pour ton editeur de texte tu peux prendre notepad2 il est gratuit ;) voici l'adresse
    http://www.01net.com/windows/Bureautique/editeur_de_texte/fiches/32301.html
    tu te debrouille plutot bien pour un lycéen ;)

    slum-dunk merci a toi aussi j'ai preféré prendre la soluce a sylvain elle me parle plus, mais merci beaucoup a toi aussi ;)
    0
  9. yohhann Messages postés 35 Statut Membre 3
     
    j'oubliais aussi tu peux prendre easy php
    c'est une sorte de simulateur de reseau
    http://www.lephpfacile.com/cours/index.php?p=2
    0
  10. yohhann Messages postés 35 Statut Membre 3
     
    non en faite ça marche pas j'ai un probleme quand j'ai rien dans ma table la condition else {echo blabla }ne s'afiche pas j'ai une page blange
    0
  11. Ssylvainsab Messages postés 2892 Statut Modérateur 825
     
    Bonsoir yohann :-)

    tu te debrouille plutot bien pour un lycéen ;)
    Merci :-)

    Pour notepad, je l'ai, mais je préfère PSPad.
    J'ai aussi easyphp ;-)

    Pour voir ou est l'erreur, tu peux redonner ton code ?
    0