Modification base de donnée...

Résolu
The_magicien Messages postés 72 Date d'inscription mardi 5 juillet 2005 Statut Membre Dernière intervention 8 février 2009 - 12 nov. 2005 à 19:02
The_magicien Messages postés 72 Date d'inscription mardi 5 juillet 2005 Statut Membre Dernière intervention 8 février 2009 - 13 nov. 2005 à 00:16
Bonjour, je ne comprends pas ce qui ne va pas dans mon code. En fait, il n'y a aucune erreur indiquée quand j'utilise la page mais il ne fait pas ce que je souhaite. Je vous explique : Je souhaiterais que cette page envoi un avis (qui a été donné dans un page précédente) sur une base de données et modifie le contenu de la base de données en conséquence...
voici mon code :

<?
$pmb = $_POST["pseudo"];
$avis = $_POST["avis"];
$pseudo = $_COOKIE['pseudo'];

if (isset($pseudo)) {

include("config.php");

$connection = mysql_connect($host,$name,$passe);
$db = mysql_select_db($database, $connection);


if ($pseudo==Crispo) {
$rq1 = "SELECT * FROM inscriptions WHERE 1";
$resultat1 = mysql_query($rq1);
$lignes = mysql_fetch_array($resultat1);

if ($avis=="oui") {
$rq = "UPDATE inscriptions SET acrispo='oui' WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="non") {
$rq = "UPDATE inscriptions SET acrispo=non WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="sans avis") {
$rq = "UPDATE inscriptions SET acrispo=sans avis WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="pas assez de description") {
$rq = "UPDATE inscriptions SET acrispo=pas assez de description WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
}
else {
echo "<center>Erreur";
}
echo 'Bravo Crispo, tu as donné ton avis ^^ [javascript:history.back() Retour] ';
}

elseif ($pseudo==Louksa) {
if ($avis=="oui") {
$rq = "UPDATE inscriptions SET alouksa='oui' WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="non") {
$rq = "UPDATE inscriptions SET alouksa=non WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="sans avis") {
$rq = "UPDATE inscriptions SET alouksa=sans avis WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="pas assez de description") {
$rq = "UPDATE inscriptions SET alouksa=pas assez de description WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
}
else {
echo "<center>Erreur";
}
echo 'Bravo Louksa, tu as donné ton avis ^^ [javascript:history.back() Retour] ';
}

elseif ($pseudo==The_magicien) {
if ($avis=="oui") {
$rq = "UPDATE inscriptions SET athemagicien='oui' WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="non") {
$rq = "UPDATE inscriptions SET athemagicien=non WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="sans avis") {
$rq = "UPDATE inscriptions SET athemagicien=sans avis WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=="pas assez de description") {
$rq = "UPDATE inscriptions SET athemagicien=pas assez de description WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
}
else {
echo "<center>Erreur";
}
echo 'Bravo The_magicien, tu as donné ton avis ^^ [javascript:history.back() Retour] ';
}
else {
}

?>

Merci de m'éclairer sur le sujet (si vous le pouvez...)
Je vous en remercie encore!
Cordialement,

4 réponses

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
12 nov. 2005 à 21:34
Salut,



Déjà ça "if ($pseudo==Crispo) {" ça ne doit pas être top => if ($pseudo=='Crispo')



Et puis le reste non plus, nottament les athemagicien=non ==> athemagicien='non'



Corriges déjà ces pbs.



Cordialement,



Kohntark-
3
The_magicien Messages postés 72 Date d'inscription mardi 5 juillet 2005 Statut Membre Dernière intervention 8 février 2009
12 nov. 2005 à 22:32
Merci beaucoup... mais cela ne fonctionne toujours pas... :-s
Voici le code (après modification...)

<?
$pmb = $_POST["pseudo"];
$avis = $_POST["avis"];
$pseudo = $_COOKIE['pseudo'];

if (isset($pseudo)) {

include("config.php");

$connection = mysql_connect($host,$name,$passe);
$db = mysql_select_db($database, $connection);


if ($pseudo=='Crispo') {
$rq1 = "SELECT * FROM inscriptions WHERE 1";
$resultat1 = mysql_query($rq1);
$lignes = mysql_fetch_array($resultat1);

if ($avis=='oui') {
$rq = "UPDATE inscriptions SET acrispo='oui' WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='non') {
$rq = "UPDATE inscriptions SET acrispo=non WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='sans avis') {
$rq = "UPDATE inscriptions SET acrispo=sans avis WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='pas assez de description') {
$rq = "UPDATE inscriptions SET acrispo=pas assez de description WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
}
else {
echo "<center>Erreur";
}
echo 'Bravo Crispo, tu as donné ton avis ^^ [javascript:history.back() Retour] ';
}

elseif ($pseudo=='Louksa') {
if ($avis=='oui') {
$rq = "UPDATE inscriptions SET alouksa='oui' WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='non') {
$rq = "UPDATE inscriptions SET alouksa=non WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='sans avis') {
$rq = "UPDATE inscriptions SET alouksa=sans avis WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='pas assez de description') {
$rq = "UPDATE inscriptions SET alouksa=pas assez de description WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
}
else {
echo "<center>Erreur";
}
echo 'Bravo Louksa, tu as donné ton avis ^^ [javascript:history.back() Retour] ';
}

elseif ($pseudo=='The_magicien') {
if ($avis=='oui') {
$rq = "UPDATE inscriptions SET athemagicien='oui' WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='non') {
$rq = "UPDATE inscriptions SET athemagicien=non WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='sans avis') {
$rq = "UPDATE inscriptions SET athemagicien=sans avis WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
elseif ($avis=='pas assez de description') {
$rq = "UPDATE inscriptions SET athemagicien=pas assez de description WHERE Pseudo='$pmb'";
$resultat = mysql_query($rq);
}
}
else {
echo "<center>Erreur";
}
echo 'Bravo The_magicien, tu as donné ton avis ^^ [javascript:history.back() Retour] ';
}
else {
}

?>

Cordialement,
3
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
12 nov. 2005 à 23:43
Tu es sur que c'est le code corrigé ???

Parce "$rq = "UPDATE inscriptions SET acrispo=non WHERE Pseudo='$pmb'";" devrait être "$rq = "UPDATE inscriptions SET acrispo= 'non' WHERE Pseudo ='$pmb'";" ... et cela doit être corrigé pour toutes les lignes de ton code.



A quoi te sert la variable $lignes ?



Tu pourrais remplacer tout ton code par ces simples lignes :

$pmb = $_POST['pseudo];

$avis = $_POST['avis'];

$pseudo = $_COOKIE['pseudo'];

$pseudos=array('Crispo','Louksa','The_magicien');



if (in_array($pseudo,$pseudos) && isset($pseudo)) { {

include("config.php");

$chmps_avis='a'.strtolower($pseudo);

$rq="UPDATE inscriptions SET $chmps_avis='$avis' WHERE Pseudo='$pmb'";

$resultat = mysql_query($rq) or die ('
Erreur lors de la mise à jour de la BD');



echo '
Bravo '.$pseudo.', tu as donné ton avis ^^


[javascript:history.back() Retour]';

}





Cordialement,



Kohntark-
3
The_magicien Messages postés 72 Date d'inscription mardi 5 juillet 2005 Statut Membre Dernière intervention 8 février 2009
13 nov. 2005 à 00:16
Désolé je n'avais pas vu les autres choses à corriger... Je suis un peu fatigué...
Bref...
La variable $lignes correspond en fait à mysql_fetch_array car ce système est en gros pour gérer des inscriptions et quand quelqu'un s'inscrit à mon site, ses données sont envoyées dans la BD é ensuite, elles sont accessibles pour les membres de l'équipe sur une page qui récupère les données de la BD...

Il n'y a pas de problèmes avec le code que tu m'as donné, mais... en fait, il est équivalent au mien et ne change pas l'avis...

Je ne comprends pas ce qui ne va pas.... Je perds espoir!!!
3
Rejoignez-nous