par
dededick » 12 juil. 2006, 18:16
Bonsoir à tous, j'ai (encore) un script qui plante:
Voici le code:
<?php
session_start();
$base = mysql_connect("localhost", "******", "*******");
mysql_select_db("******", $base);
$sql = "SELECT * FROM siteweb WHERE pseudo='".$pseudo."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
$pseudo=$data['pseudo'];
$gallions=$data['gallions'];
$humeur=$data['humeur'];
$sante=$data['sante'];
$envie=$data['envie'];
$robes=$data['robes'];
$chat=$data['chat'];
$hibou=$data['hibou'];
$crapaud=$data['crapaud'];
$chaudron=$data['chaudron'];
$fiole=$data['fiole'];
$telescope=$data['telescope'];
$balance=$data['balance'];
$ensemble=$data['ensemble'];
$baguette=$data['baguette'];
$baguetteun=$data['baguetteun'];
$baguettedeux=$data['baguettedeux'];
$bierraubeure=$data['bierraubeure'];
$theun=$data['theun'];
$chocolat=$data['chocolat'];
$objet=$data['objet'];
$objetun=$data['objetun'];
$objetdeux=$data['objetdeux'];
$objettrois=$data['objettrois'];
$objetquatre=$data['objetquatre'];
$objetcinq=$data['objetcinq'];
$choco=$data['choco'];
$bulles=$data['bulles'];
$plume=$data['plume'];
$livres=$data['livres'];
$cafe=$data['cafe'];
$the=$data['the'];
$purfeu=$data['purfeu'];
$reponse = mysql_query("SELECT cafe FROM ****** WHERE pseudo='$pseudo'");
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<?php
if ($donnees['cafe'] == "oui")
{
echo 'Vous avez déjà un café dans votre inventaire! Veuillez l\'utiliser avant d\'en acheter un autre.';
echo '<a href="*******.php"> Retour </a>';
}
// si la variable est vide
elseif ($_GET['cafe'] == "")
{
header('location: *******.php');
}
// si la variable vaut 1, il achète les livres
elseif ($_GET['cafe'] =="1")
{
// vérification de ses sous
if ($gallions - 5 < 0)
{
// si non, on redirige vers une erreur
header('erreur3.php');
}
else
{
$sql = 'UPDATE `********` SET `gallions` = "'.$gallions.'" - 5, `cafe` = "oui" WHERE `pseudo` = "'.$pseudo.'"' ;
$req = mysql_query($sql) or die('Une erreur est survenue, veuillez réssayer. !<br>'.$sql.'<br>'.mysql_error());
// Puis on redirige vers l'acceuil
header('location: arrivee.php');
echo ('Vous achetez un café, à bientôt sur poudlard');
}}}?>
<?php
$reponseun = mysql_query("SELECT purfeu FROM ****** WHERE pseudo='$pseudo'");
while ($donneesun = mysql_fetch_array($reponseun) )
{
?>
<?php
if ($donneesun['purfeu'] == "oui")
{
echo 'Vous avez déjà un whisky pur feu dans votre inventaire, veuillez le boire avant de vous re-saouler.';
echo '<a href="*******.php"> Retour </a>';
}
elseif ($_GET['purfeu'] == "")
{
header('location: piedodu.php');
}
// si la variable vaut 2, il achète les livres
elseif ($_GET['purfeu'] =="2")
{
// vérification de ses sous
if ($gallions - 15 < 0)
{
// si non, on redirige vers une erreur
header('erreur3.php');
}
else
{
$sql = 'UPDATE `********` SET `gallions` = "'.$gallions.'" - 15, `purfeu`= "oui" WHERE `pseudo` = "'.$pseudo.'"' ;
$req = mysql_query($sql) or die('Une erreur est survenue, veuillez réssayer. !<br>'.$sql.'<br>'.mysql_error());
// Puis on redirige vers l'acceuil
header('location: arrivee.php');
echo ('Profitez bien de votre whisky, à bientôt sur poudlard');
}} }
?>
<?php
$reponsedeux = mysql_query("SELECT the FROM ****** WHERE pseudo='$pseudo'");
while ($donneesdeux = mysql_fetch_array($reponsedeux) )
{
?>
<?php
if ($donneesdeux['the'] == "oui")
{
echo 'Vous avez déjà un thé dans votre inventaire, veuillez l\'utiliser.';
echo '<a href="********.php"> Retour </a>';
}
elseif ($_GET['the'] == "")
{
header('location: *********.php');
}
// si la variable vaut 1, il achète les livres
elseif ($_GET['the'] =="3")
{
// vérification de ses sous
if ($gallions - 3 < 0)
{
// si non, on redirige vers une erreur
header('erreur3.php');
}
else
{
$sql = 'UPDATE `********` SET `gallions` = "'.$gallions.'" - 3, `the`= "oui" WHERE `pseudo` = "'.$pseudo.'"' ;
$req = mysql_query($sql) or die('Une erreur est survenue, veuillez réssayer. !<br>'.$sql.'<br>'.mysql_error());
// Puis on redirige vers l'acceuil
header('location: *********.php');
echo ('Vous prenez votre tasse de thé, à bientôt sur poudlard');
}} }
mysql_close();
?><br/>
<a href="arrivee.php"> Quitter le chemin de traverse </a>
Voilà, le problème est que, lorsque je fais un test, et que j'ai les trois objets, deux, ou un seul, il m'affiche:
Code : Tout sélectionner
Vous avez déjà un café dans votre inventaire! Veuillez l'utiliser avant d'en acheter un autre. Retour Vous avez déjà un whisky pur feu dans votre inventaire, veuillez le boire avant de vous re-saouler. Retour Vous avez déjà un thé dans votre inventaire, veuillez l'utiliser. Retour
Quitter le chemin de traverse
Pourquoi? Merci

Bonsoir à tous, j'ai (encore) un script qui plante:
Voici le code:
[php]<?php
session_start();
$base = mysql_connect("localhost", "******", "*******");
mysql_select_db("******", $base);
$sql = "SELECT * FROM siteweb WHERE pseudo='".$pseudo."'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_assoc($req);
$pseudo=$data['pseudo'];
$gallions=$data['gallions'];
$humeur=$data['humeur'];
$sante=$data['sante'];
$envie=$data['envie'];
$robes=$data['robes'];
$chat=$data['chat'];
$hibou=$data['hibou'];
$crapaud=$data['crapaud'];
$chaudron=$data['chaudron'];
$fiole=$data['fiole'];
$telescope=$data['telescope'];
$balance=$data['balance'];
$ensemble=$data['ensemble'];
$baguette=$data['baguette'];
$baguetteun=$data['baguetteun'];
$baguettedeux=$data['baguettedeux'];
$bierraubeure=$data['bierraubeure'];
$theun=$data['theun'];
$chocolat=$data['chocolat'];
$objet=$data['objet'];
$objetun=$data['objetun'];
$objetdeux=$data['objetdeux'];
$objettrois=$data['objettrois'];
$objetquatre=$data['objetquatre'];
$objetcinq=$data['objetcinq'];
$choco=$data['choco'];
$bulles=$data['bulles'];
$plume=$data['plume'];
$livres=$data['livres'];
$cafe=$data['cafe'];
$the=$data['the'];
$purfeu=$data['purfeu'];
$reponse = mysql_query("SELECT cafe FROM ****** WHERE pseudo='$pseudo'");
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<?php
if ($donnees['cafe'] == "oui")
{
echo 'Vous avez déjà un café dans votre inventaire! Veuillez l\'utiliser avant d\'en acheter un autre.';
echo '<a href="*******.php"> Retour </a>';
}
// si la variable est vide
elseif ($_GET['cafe'] == "")
{
header('location: *******.php');
}
// si la variable vaut 1, il achète les livres
elseif ($_GET['cafe'] =="1")
{
// vérification de ses sous
if ($gallions - 5 < 0)
{
// si non, on redirige vers une erreur
header('erreur3.php');
}
else
{
$sql = 'UPDATE `********` SET `gallions` = "'.$gallions.'" - 5, `cafe` = "oui" WHERE `pseudo` = "'.$pseudo.'"' ;
$req = mysql_query($sql) or die('Une erreur est survenue, veuillez réssayer. !<br>'.$sql.'<br>'.mysql_error());
// Puis on redirige vers l'acceuil
header('location: arrivee.php');
echo ('Vous achetez un café, à bientôt sur poudlard');
}}}?>
<?php
$reponseun = mysql_query("SELECT purfeu FROM ****** WHERE pseudo='$pseudo'");
while ($donneesun = mysql_fetch_array($reponseun) )
{
?>
<?php
if ($donneesun['purfeu'] == "oui")
{
echo 'Vous avez déjà un whisky pur feu dans votre inventaire, veuillez le boire avant de vous re-saouler.';
echo '<a href="*******.php"> Retour </a>';
}
elseif ($_GET['purfeu'] == "")
{
header('location: piedodu.php');
}
// si la variable vaut 2, il achète les livres
elseif ($_GET['purfeu'] =="2")
{
// vérification de ses sous
if ($gallions - 15 < 0)
{
// si non, on redirige vers une erreur
header('erreur3.php');
}
else
{
$sql = 'UPDATE `********` SET `gallions` = "'.$gallions.'" - 15, `purfeu`= "oui" WHERE `pseudo` = "'.$pseudo.'"' ;
$req = mysql_query($sql) or die('Une erreur est survenue, veuillez réssayer. !<br>'.$sql.'<br>'.mysql_error());
// Puis on redirige vers l'acceuil
header('location: arrivee.php');
echo ('Profitez bien de votre whisky, à bientôt sur poudlard');
}} }
?>
<?php
$reponsedeux = mysql_query("SELECT the FROM ****** WHERE pseudo='$pseudo'");
while ($donneesdeux = mysql_fetch_array($reponsedeux) )
{
?>
<?php
if ($donneesdeux['the'] == "oui")
{
echo 'Vous avez déjà un thé dans votre inventaire, veuillez l\'utiliser.';
echo '<a href="********.php"> Retour </a>';
}
elseif ($_GET['the'] == "")
{
header('location: *********.php');
}
// si la variable vaut 1, il achète les livres
elseif ($_GET['the'] =="3")
{
// vérification de ses sous
if ($gallions - 3 < 0)
{
// si non, on redirige vers une erreur
header('erreur3.php');
}
else
{
$sql = 'UPDATE `********` SET `gallions` = "'.$gallions.'" - 3, `the`= "oui" WHERE `pseudo` = "'.$pseudo.'"' ;
$req = mysql_query($sql) or die('Une erreur est survenue, veuillez réssayer. !<br>'.$sql.'<br>'.mysql_error());
// Puis on redirige vers l'acceuil
header('location: *********.php');
echo ('Vous prenez votre tasse de thé, à bientôt sur poudlard');
}} }
mysql_close();
?><br/>
<a href="arrivee.php"> Quitter le chemin de traverse </a>
[/php]
Voilà, le problème est que, lorsque je fais un test, et que j'ai les trois objets, deux, ou un seul, il m'affiche:
[code]
Vous avez déjà un café dans votre inventaire! Veuillez l'utiliser avant d'en acheter un autre. Retour Vous avez déjà un whisky pur feu dans votre inventaire, veuillez le boire avant de vous re-saouler. Retour Vous avez déjà un thé dans votre inventaire, veuillez l'utiliser. Retour
Quitter le chemin de traverse [/code]
Pourquoi? Merci :)