c'est classique et fonctionnel comme nom de champs "planètes" avec accent ?
if($pseudo != $data['pseudo'])
Le script ne reconnais pas quand le pseudo est identique a celui sensé avoir été trouvé dans la requete "select"
si je ne dis pas de trop grosse débilité,
$data['pseudo'] est égal au dernier enregistrement de la DB
vu que le SELECT est "blanc"
ce qui ne serait pas le cas avec par exemple
$sql="SELECT tag, pseudo, planètes FROM joueurs WHERE pseudo LIKE '".$_POST['pseudo']."' LIMIT 1";
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
<?php
if ($_POST['pseudo'] != "" AND $_POST['planète'] != "") { # si les 2 sont vides, on ignore
$sql="SELECT tag, pseudo, planètes FROM joueurs WHERE pseudo LIKE '".$_POST['pseudo']."' LIMIT 1";
$res = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$FoundCount = mysql_num_rows($res->result);
if ($FoundCount < 1) { # si le pseudo est inconnu
$req="INSERT INTO `b-a-s-t-a`.`joueurs` (`tag`, `pseudo`, `planètes`) VALUES ('$tag', '$pseudo', '$planète');";
$result = mysql_query($req) or die('Erreur SQL !<br>'.$req.'<br>'.mysql_error());
echo '<font size="6" color="red"><b>Enregistrement effectué, Merci.</b></font>';
} else { # le pseudo existe dans la DB
$requete="UPDATE joueurs SET planètes = CONCAT(planètes , ', ' , '$planète') WHERE pseudo='".$_POST['pseudo']."';";
$resultat = mysql_query($requete) or die('Erreur SQL !<br>'.$requete.'<br>'.mysql_error());
echo '<font size="6" color="red"><b> H2H2H2H2 Enregistrement effectué, Merci.</b></font>';
}
} else {
echo 'un petit avertissemnt pour dire qu’il faut remplir les 2 champs';
}
?> |
PS : je n'ai jamais été un fan des pluriels dans le nom des champs/variables, mais alors les accents ... cet éditeur lui même n'a pas l'air d'être un adepte, si l'on regarde les codes couleurs de :
if ($pseudo == "" || $planète == "") {
Partager