CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Help php : je m'embrouille tt seul...

t0ny35
t0ny35
Niveau 11
11 mars 2003 à 01:06:51

salut a tous.
je suis en train d´essayer de faire un script php qui, a partir d´un formulaire ( en locurence le topjeux des visiteurs), traitera les données de la facon suivante :
-il vérifie si le jeu est déja dans la BDD
-si oui il rajoute un vote
-si non il le créé et incrément le champ votes de 1

pour cela j´ai donc créé ce script :

<?
include(´config.php´);
$db = mysql_connect("$host","$user","$pass");
mysql_select_db($nombase,$db);
// recuperation du nombre de votes pour le jeu ayant le nom nomjeu1 C.A.D le nom de la variable

$req = mysql_query("SELECT * FROM topjeux WHERE nomjeu=´$nomjeu1´");
$res = mysql_numrows($req);

//si le nombre de jeux vaut 0 on insere un nouvel enregistrement avec le nom nomjeu1 et le nombre de votes 1

if($res == 0)
{
mysql_query("INSERT INTO topjeux VALUES(´´,´$nomjeu1´,´1´)");
}
//fin de linstruction quand il ny a pas de vote enregistre

//debut de la mise a jour du nombre de votes quand il y a au moin 1 jeu correspondant a nomjeu1

else if($res>0)
{
//on recupere le nombre exact de votes
$getvote = mysql_query("SELECT votes FROM topjeux WHERE nomjeu=´$nomjeu1´");
while($data = mysql_fetch_array($getvote))
{
$nbrvotes = $data[votes];
// on rajoute 1 vote
$nbrvotes++;
}
// on met a jour la bdd a partir de la variable nbrvotes
mysql_query("UPDATE topjeux SET votes=´$nbrvotes´ WHERE nomjeu=´$nomjeu1´");
}
? >

ce meme script me retourne :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in jeu.php on line 24

si vous pouviez m´aider...packe la je cherche mais je vois pas trop en fait
merci beaucoup d´avance ; )
( une petite précision : ce script est juste un test qui concerne la mise a jour de la bdd

sunnmagic
sunnmagic
Niveau 9
11 mars 2003 à 01:18:43

Pour la ligne :

while($data = mysql_fetch_array($getvote))

Ca ne serait pas plutot :

while($topjeux = mysql_fetch_array($getvote))

sunnmagic
sunnmagic
Niveau 9
11 mars 2003 à 01:21:35

Je pense que les $data n´ont rien à faire là, il faut tous les remplacer par $topjeux

Aeternus
Aeternus
Niveau 10
11 mars 2003 à 02:32:32

je pense que c un ==, le = est une assignation

sunnmagic
sunnmagic
Niveau 9
11 mars 2003 à 10:09:15

Je ne sais pas si le == marche, mais le = marche en tout cas, mes scripts sont écrit de cette façon.

captain_torche
captain_torche
Niveau 10
11 mars 2003 à 10:15:14

Ben, le == sert à vérifier une égalité ( dans une condition if(), par exemple)

Alors que = tout seul, sert à assigner une valeur à une variable.

Dans certaines conditions, = peut vérifier l´égalité, mais c´est tout de même hasardeux.

anthraxman
anthraxman
Niveau 10
11 mars 2003 à 13:50:48

j´ai testé avec $topjeux a la place de $data
mais sa me met toujours :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in jeu.php on line 24

sachant que la ligne 24 est while(.....) je pense que le probleme est la :
$getvote = mysql_query("SELECT votes FROM topjeux WHERE nomjeu=´$nomjeu1´");
while($topjeux = mysql_fetch_array($getvote))

je pense meme plus précisement que sa foire au niveau de la variable nomjeu1 mais je l´ai fait pour un autre script et sa amrche donc enfait je suis tout perdu

jarose
jarose
Niveau 10
11 mars 2003 à 14:06:50

<?
include(´config.php´);

$db = mysql_connect("$host","$user","$pass");
mysql_select_db($nombase,$db);

$req = mysql_query("SELECT * FROM topjeux WHERE nomjeu = ´$nomjeu1´");
$res = mysql_num_rows($req);

if($res ! = 0)
{
incr_votes = ´0´;
$query = mysql_query("SELECT votes FROM topjeux WHERE nomjeu = ´$nomjeu1´");
$req = mysql_fetch_object($query))
{
$incr_votes += $req->votes
}

mysql_query("UPDATE topjeux SET votes = ´$incr_votes´ WHERE nomjeu=´$nomjeu1´");
}
else
{
mysql_query("INSERT INTO topjeux VALUES(´´,´$nomjeu1´,´1´)");
}
? >

jarose
jarose
Niveau 10
11 mars 2003 à 14:08:34

j´ai fait une erreur :

<?
include(´config.php´);

$db = mysql_connect("$host","$user","$pass");
mysql_select_db($nombase,$db);

$req = mysql_query("SELECT * FROM topjeux WHERE nomjeu = ´$nomjeu1´");
$res = mysql_num_rows($req);

if($res ! = 0)
{
incr_votes = ´0´;
$query = mysql_query("SELECT votes FROM topjeux WHERE nomjeu = ´$nomjeu1´");
$req = mysql_fetch_object($query))
{
$incr_votes += $req->votes;
}

mysql_query("UPDATE topjeux SET votes = ´$incr_votes´ WHERE nomjeu=´$nomjeu1´");
}
else
{
mysql_query("INSERT INTO topjeux VALUES(´´,´$nomjeu1´,´1´)");
}
? >

PS: fais pas de copier/coller, sinon ça fonctionnera pas ( le forum remplace les simple cotes par des ´)

anthraxman
anthraxman
Niveau 10
11 mars 2003 à 15:55:42

il me met une parse error : : parse error, unexpected ´=´ in jeu.php on line 12

jarose
jarose
Niveau 10
11 mars 2003 à 15:59:10

"PS: fais pas de copier/coller, sinon ça fonctionnera pas ( le forum remplace les simple quotes par des ´)"

. ..

anthraxman
anthraxman
Niveau 10
11 mars 2003 à 16:00:05

ouais je c...
mais le truc c que g fait copier coller et refait toutes les simples quotes.
fallais pas ?

jarose
jarose
Niveau 10
11 mars 2003 à 16:02:42

balances la ligne 12 de ta page

anthraxman
anthraxman
Niveau 10
11 mars 2003 à 16:04:11

incr_votes = ´0´;

jarose
jarose
Niveau 10
11 mars 2003 à 16:05:24

lol, erreur de ma part ; )

remplace incr_votes = ´0´; par $incr_votes = ´0´;

anthraxman
anthraxman
Niveau 10
11 mars 2003 à 16:16:56

merchi : )(dsl du retard g posté un topic sur un autre forum et c . .... de 3minutes m´empechais de répondre donc g fait un CS en attendant ; ) )

jarose
jarose
Niveau 10
11 mars 2003 à 16:19:51

de rien ; )

anthraxman
anthraxman
Niveau 10
12 mars 2003 à 12:56:26

encor une pitite erreur :

Parse error: parse error, unexpected ´{´ in jeu.php on line 15

ligne 13-14-15 :
$query = mysql_query("SELECT votes FROM topjeux WHERE nomjeu = ´$nomjeu1´");
$req = mysql_fetch_object($query)
{

je supose qu´il faut rajouter une boucle mais quoi ? !

jarose
jarose
Niveau 10
12 mars 2003 à 14:38:30

arf merde,

remplaces "$req" par "while($req"
->
while($req = mysql_fetch_object($query))
{

anthraxman
anthraxman
Niveau 10
12 mars 2003 à 20:45:04

thx bocoup

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment