un probleme pour materialiser un script

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : un probleme pour materialiser un script

[RESOLU] Re: un probleme pour materialiser un script

par Invité » 22 nov. 2005, 12:47

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

par Truc » 22 nov. 2005, 00:26

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

RE

par krakra4 » 22 nov. 2005, 00:08

qlq peut me dire la provenance de mon erreur.


merci d'avance.

re,

par krakra4 » 21 nov. 2005, 20:44

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: un probleme pour materialiser un script

par mario » 21 nov. 2005, 18:42

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 ?

un probleme pour materialiser un script

par pascal 75000 » 21 nov. 2005, 18:19

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