Valeur par défaut dans MYSQL [Résolu]

benjinancy 20 Messages postés lundi 14 mars 2005Date d'inscription 3 octobre 2006 Dernière intervention - 29 août 2005 à 23:56 - Dernière réponse : JoJo738 1267 Messages postés mercredi 7 juillet 2004Date d'inscription 29 juin 2010 Dernière intervention
- 31 août 2005 à 11:06
Bonjour, je souhaite mettre un système de vote dans MYSQL, qui vérifie
s'il existe déjà une note ou si ya aucune note (càd le chiffre zero)...

or, je sais pas pourquoi, mais j'ai l'impression qu'il y a aucune
valeur par défaut dans le champ vote dans BDD (aucun zero prédéfini)...

Donc ma condition ne marche pas..



voici mon code :



<?php



$connection = mysql_connect($serveur, $login, $pass) or die ("Erreur de connection a mysql");

$cnx = mysql_select_db($base, $connection) or die ("Erreur de connection a la base de données");

$votants=mysql_query("SELECT `nbvote` FROM `photos` WHERE `noauto`=$numero") or die ("erreur recherche nbvote");

$req=mysql_query("SELECT `vote` FROM `photos` WHERE `noauto`=$numero") or die ("erreur recherche vote");



if ($votants > 0)

{

echo("qd il existe déjà une note au moins");

$final=($req*($votants)+$note)/($votants+1);

$changement=mysql_query("UPDATE `photos` SET `vote`=$final WHERE
`noauto`=$numero") or die ("qd il existe déjà une note : affectation
note");

$nbfinal=($votants+1);

$increment0=mysql_query("UPDATE `photos` SET `nbvote`=$nbfinal
WHERE `noauto`=$numero") or die ("qd il existe déjà une note : nbvote");

echo("vote enregistré");

}



else

{

echo("qd il n'existe pas de note");

$changement0=mysql_query("UPDATE `photos` SET `vote`=$note WHERE
`noauto`=$numero") or die ("qd il n'existe pas de vote : affectation
note");

$increment0=mysql_query("UPDATE `photos` SET `nbvote`="1" WHERE
`noauto`=$numero") or die ("qd il n'existe pas de vote : nbvote=1");

echo("vote enregistré");

}



$cnx =mysql_close();

?>





et voici ma base de données :



|
Champ |
Type |
Interclassement |
Attributs |
Null |
Défaut |
Extra |
Action |

----

,
<label onclick ="return (document.getElementById('checkbox_row_1') ? false : true)" for="checkbox_row_1">dte</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_2') ? false : true)" for="checkbox_row_2">name</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_3') ? false : true)" for="checkbox_row_3">titr</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_4') ? false : true)" for="checkbox_row_4">tem</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_5') ? false : true)" for="checkbox_row_5">lgd</label>,
longtext,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,

,

,

,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_6') ? false : true)" for="checkbox_row_6">img</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_7') ? false : true)" for="checkbox_row_7">miniimg</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_8') ? false : true)" for="checkbox_row_8">vote</label>,
varchar(11),
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
0,
,

,

,

,

,

,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_9') ? false : true)" for="checkbox_row_9">nbvote</label>,
int(11),
,
,
Non,
0,
,

,

,

,

,

,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_10') ? false : true)" for="checkbox_row_10">nbcoment</label>,
int(11),
,
,
Oui,
0,
,

,

,

,

,

,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_11') ? false : true)" for="checkbox_row_11">comment</label>,
text,
<dfn title="Europe de l'ouest (multilingue), insensible à la casse">latin1_general_ci</dfn>,
,
Non,
,
,

,

,
,
,
,

,

----

,
<label onclick="return (document.getElementById('checkbox_row_12') ? false : true)" for="checkbox_row_12">noauto</label>,
int(11),
,
,
Non,
,
auto_increment,

,

,

,

,

,








SVP, si vous trouvez quelque chose de louche, dite le moi, ça m'enerve, là!!!





Merci d'avance
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
JoJo738 1267 Messages postés mercredi 7 juillet 2004Date d'inscription 29 juin 2010 Dernière intervention - 30 août 2005 à 12:18
3
Merci
^^ lol



$votants mysql_query( ' SELECT `nbvote` FROM `photos` WHERE `noauto`' . $numero) or die ('Erreur recherche nbvote');
$nbvote = mysql_result($votants, 0);
// $nbvote = mysql_result($votants, 0, 'nbvote'); // Si besoin



<hr>Si ma reponse te convient, merci de l'accepter !

Merci JoJo738 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 117 internautes ce mois-ci

Commenter la réponse de JoJo738
Evangun 1982 Messages postés dimanche 20 février 2005Date d'inscription 24 septembre 2012 Dernière intervention - 30 août 2005 à 00:16
0
Merci
bonsoir,

le pb semble provenir de la façon dont tu enregistres tes résultats,
pas de la façon dont tu consultes la base... donc il nous faut le code
de tes enregistrements
Commenter la réponse de Evangun
benjinancy 20 Messages postés lundi 14 mars 2005Date d'inscription 3 octobre 2006 Dernière intervention - 30 août 2005 à 01:29
0
Merci
Ba euh... Le premier prob que j'aimerai bien résoudre, c'est la
récupération de données dans la BDD(et pourtant, je suis pas un novice
et ça marche normalement...).

En fait, je lui demande de récuperer le nombre de votants ainsi que la
note du vote (la moyenne). Je fais donc un select et après, je mets une
structure de condition, et après... il ne sait pas quoi faire vu qu'il
n'a pas réussi à récuperer si la valeur...

Je suis sur que c'est tout con, mais...
Commenter la réponse de benjinancy
Evangun 1982 Messages postés dimanche 20 février 2005Date d'inscription 24 septembre 2012 Dernière intervention - 30 août 2005 à 01:50
0
Merci
ha oui... tu as écrit $votants=mysql_query("SELECT `nbvote` FROM `photos` WHERE `noauto`=$numero") or die ("erreur recherche nbvote");

mais tu sembles considérer après que $votants devrait être un nombre; si c'est ce que tu veux ttu devrais plutôt écrire

$votants=mysql_query("SELECT count (*) FROM `photos` WHERE `noauto`=$numero") or die ("erreur recherche nbvote");

ou quelque chose du genre (revois au niveau de count(*) ),

mais après de tte façon tu oublies d'écrire while ($row mysql_fetch_row($votants)) { <gras>$nombredevotants</gras> $row; } (ou alors mets-le sous forme de tableau si tu ne fais pas un count( ) pour récupérer l'ensemble de tes données).



en espérant que c'était les seuls pbs (je n'ai pas lu en détail)

à+
Commenter la réponse de Evangun
Evangun 1982 Messages postés dimanche 20 février 2005Date d'inscription 24 septembre 2012 Dernière intervention - 30 août 2005 à 01:57
0
Merci
il fallait lire while ($row = mysql_fetch_row($votants)) { $nombredevotants = $row[0]; }



et effectivement $votants est un nombre, mes excuses, je parle souvent trop vite....
Commenter la réponse de Evangun
JoJo738 1267 Messages postés mercredi 7 juillet 2004Date d'inscription 29 juin 2010 Dernière intervention - 30 août 2005 à 02:16
0
Merci
Hello,



$votants mysql_query( ' SELECT `nbvote` FROM `photos` WHERE `noauto`' . $numero) or die ('Erreur recherche nbvote');
$nombre_de_votes = mysql_num_rows($votants);// Le nombre de votes



<hr>Si ma reponse te convient, merci de l'accepter !
Commenter la réponse de JoJo738
Evangun 1982 Messages postés dimanche 20 février 2005Date d'inscription 24 septembre 2012 Dernière intervention - 30 août 2005 à 02:24
0
Merci
ha ha, toi aussi tu lis trop vite jojo: regarde la nature du champ `nbvote` lol
Commenter la réponse de Evangun
benjinancy 20 Messages postés lundi 14 mars 2005Date d'inscription 3 octobre 2006 Dernière intervention - 31 août 2005 à 00:20
0
Merci
Merci Jojo!!!!!

J'avoue que mon probleme paraissait très vague, mais grace à ta dernière portion de code, tout marche à merveille!!!!!!

Longue vie à Jojo !!!!!!

;-)
Commenter la réponse de benjinancy
JoJo738 1267 Messages postés mercredi 7 juillet 2004Date d'inscription 29 juin 2010 Dernière intervention - 31 août 2005 à 11:06
0
Merci
Lol,

arrête je vais rougir ...

<hr>Si ma reponse te convient, merci de l'accepter !
Commenter la réponse de JoJo738

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.