Page 1 sur 1

un probleme pour materialiser un script

Posté : 21 nov. 2005, 18:19
par pascal 75000
bonjour,

j'ai besoin d'une aide.

a partir d'un post 'login' je voudrais dans une nouvelle page.

ouvrir ma base sql composé du ' login' et des 'points'
regarder si le login est existant -
si oui rajouter 500 points
si nouveau rajoute a ma base le 'login' et '0' dans les points.
fermer base

j'ai essayé pleins de script et tjrs avec des erreurs.
donc je demande de l'aide pour un script de base de 4 lignes.

merci

Re: un probleme pour materialiser un script

Posté : 21 nov. 2005, 18:42
par mario
j'ai essayé pleins de script et tjrs avec des erreurs.
donc je demande de l'aide pour un script de base de 4 lignes.
merci
Qu'est ce qui te pose problème ? Peux tu nous donner une portion de ton code (pas trop longue non plus :lol: ) et le message d'erreur ?

re,

Posté : 21 nov. 2005, 20:44
par krakra4
voila mon code
  extract($_POST); 
 
 $db=mysql_connect("xxx","xxxxx","xxxxxx") or die('Erreur de connexion '.mysql_error()); 
 mysql_select_db('xxxx',$db)  or die('Erreur de selection '.mysql_error());  
  
  $sql = "SELECT points FROM test WHERE login = '".addslashes($login)."'";
  $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
  if (mysql_num_rows($req) > 0) {
     $data = mysql_fetch_assoc($req);
    points=points+500;
 {
    }
  }


// sélection de la base  
    mysql_select_db('xxxxx',$db); 

    $sql = "INSERT INTO test (login, points ) VALUES ('$login','$points')"; 
    // on insère les informations du formulaire dans la table 
   mysql_query($sql); 
    mysql_close();  // on ferme la connexion 

RE

Posté : 22 nov. 2005, 00:08
par krakra4
qlq peut me dire la provenance de mon erreur.


merci d'avance.

Posté : 22 nov. 2005, 00:26
par Truc
Salut, le probleme vient surtout de la:
 points=points+500; 
c'est une mauvaise opération, manque "$" et pour la lecture des donnes de la requete $data['login']

Voila une proposition:
$login=addslashes($_POST['login']);

$db=mysql_connect("xxx","xxxxx","xxxxxx") or die('Erreur de connexion '.mysql_error());
mysql_select_db('xxxx',$db)  or die('Erreur de selection '.mysql_error());  
  
  $sql = "UPDATE test set points=points+500 WHERE login = '".$login."'"; //essai de mettre a jour les données avec le login donné
  $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
  
  if(mysql_affected_rows() == 0) // retourne le nombre de lignes modifiées par la dernière requete
  {
		// si pas eu de mise a jour (donc pas de membre avec le psudo donné) création d'une nouvelle entrée
		$sql = "INSERT INTO test (login, points ) VALUES ('".$login."', 0)";
		// on insère les informations du formulaire dans la table
		mysql_query($sql);
  }
  
mysql_close();  // on ferme la connexion

[RESOLU] Re: un probleme pour materialiser un script

Posté : 22 nov. 2005, 12:47
par Invité
bonjour,

j'ai besoin d'une aide.

a partir d'un post 'login' je voudrais dans une nouvelle page.

ouvrir ma base sql composé du ' login' et des 'points'
regarder si le login est existant -
si oui rajouter 500 points
si nouveau rajoute a ma base le 'login' et '0' dans les points.
fermer base

j'ai essayé pleins de script et tjrs avec des erreurs.
donc je demande de l'aide pour un script de base de 4 lignes.

merci