Problème SQL après changement d'hébergeur

Résolu
arthezius Messages postés 3756 Statut Membre -  
arthezius Messages postés 3756 Statut Membre -
Bonjour,

J'ai changé d'hébergeur tout dernièrement.
J'ai juste changé mes paramètres donc dans mon code pour lié mon site à ma nouvelle base de données.

Toutefois, avec un code que j'avais déjà, il m'affiche maintenant une erreur:

Out of range value adjusted for column 'id' at row 1


Je comprends pas trop d'ou viens cette erreur.

Je vous copie mon code (sans doute pas parfait, j'ai pas cette prétention).

Inscription.php
<?php
// on teste si le visiteur a soumis le formulaire  
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') { 
// on teste l'existence de nos variables. On teste également si elles ne sont pas vides 
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) { 
// on teste les deux mots de passe 
if ($_POST['pass'] != $_POST['pass_confirm']) { 
$erreur = 'Les 2 mots de passe sont différents.'; 
} 
else { 
	$mysql_host="########"; // le serveur
	$mysql_login="########"; // le login
	$mysql_pass="#######"; // mot de passe
	$mysql_dbnom="########"; // nom de la base de donnee
	mysql_connect ($mysql_host,$mysql_login,$mysql_pass);
	mysql_select_db ($mysql_dbnom);

$date = date("Y-m-d-H-i"); $mail = $_POST['mail']; $histoire = $_POST['histoire'];
// on recherche si ce login est déjà utilisé par un autre membre 
$sql = 'SELECT * FROM membres WHERE login="'.mysql_escape_string($_POST['login']).'"'; 
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); 
$data = mysql_fetch_array($req);
 
if ($data[0] == 0) { 
$sql = 'INSERT INTO membres VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'", "'.$mail.'", "'.$date.'", "", "'.$histoire.'", "Citoyen", "15000", "", "", "10")';  
$sql_2 = 'INSERT INTO inventaire(id,login) VALUES("","'.$_POST['login'].'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_query($sql_2) or die('Erreur SQL !'.$sql_2.'<br />'.mysql_error());

//Mail
$headers ='From: "nom"<'.$_POST['login'].'>'."\n";
$headers .='Reply-To: arthezius@free.fr'."\n";
$headers .='Content-Type: text/html; charset="utf-8"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';

$message ='<html><head><title>Inscription</title>
<style type="text/css">
<!--
.texte { font-family: Geneva, Arial, Helvetica, sans-serif; font-size: 12px; }
.titre { font-family: Arial, Helvetica, sans-serif; font-size: 18px; font-weight: bold; }
.Style2 { font-family: Arial, Helvetica, sans-serif; font-size: 10px; font-weight: bold; }
A:link {COLOR: #000000; TEXT-DECORATION: none; FONT-SIZE: 12px; font-family: Arial, Helvetica, sans-serif}
A:visited {COLOR: #CC6600; TEXT-DECORATION: none; FONT-SIZE: 12px; font-family: Arial, Helvetica, sans-serif}
A:hover {COLOR: #CC0000; TEXT-DECORATION: underline; FONT-SIZE: 12px; font-family: Arial, Helvetica, sans-serif}
body { background-color: #006699; } --> </style>
</head><body><table width="500" align="center" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"  style="border: 1px solid rgb(0, 0, 0);">
<tr><td><a href="http://arthezius.fr/spaceattack/"><img src="http://arthezius.fr/spaceattack/images/entetemail.jpg" border="0"  alt="Space Attack" title="Space Attack"/></a></td></tr>
<tr><td><table width="400" align="center" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
<tr><td><br /><div align="center" class="titre">Merci de vous être inscrit sur Space Attack.</div><br>
<p class="texte" align="left"><strong>Vos identifiants sont :</strong><br> 
<blockquote><span class="texte">Login : '.$_POST['login'].'<br>
Mot de passe : '.$_POST['pass'].'</span></blockquote></p>
<p class="texte"><strong>Retrouvez-nous sur <a href="http://arthezius.fr/spaceattack/">Space Attack</a> !</strong></p><br /></td></tr></table></td></tr>
<tr><td><img src="http://arthezius.fr/spaceattack/images/piedmail.jpg" alt="Site by Arthezius" title="Design by Arthezius"/></td></tr></table>
<div align="center" class="Style2">Space Attack © 2008</div></body></html>';

mail(''.$_POST['mail'].'', 'Sujet', $message, $headers);

//header('Location: redirect.php');
	echo'<html><head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<style type="text/css"><!-- body { background-color: #006699; } --></style>
	</head>
	<body><table width="640" align="center" border="0" cellpadding="5" cellspacing="0" bgcolor="#CCCCCC">
	<tr><td><br /><br />
	<table width="500" align="center" border="0" cellpadding="5" cellspacing="0" bgcolor="#FFFFFF"  style="border: 1px solid rgb(0, 0, 0);">
	<tr><td><p class="texte" align="center"><br />
	<span class="texte">Merci de vous êtres inscrit.<br />Un email viens de vous être envoyé vous confirmant votre inscription.<br><br><a href="index.php?page=connexion"> > Connexion</a></span>
			<br /><br /></td></tr></table><br /><br /></td></tr></table>';
//exit(); 
}

else { 
$erreur = 'Un membre possède déjà ce login.'; 
} 
} 
} 
else { 
$erreur = 'Au moins un des champs est vide.'; 
}  
}
else { include("formulaire.php"); }  
?>


A vrai dire je comprends pas trop d'où ça peut venir.
Je vous remercierai si vous pouviez m'aider.

Le lien: http://arthezius.fr/spaceattack/index.php?page=inscription
A voir également:

3 réponses

LeckyeNews Messages postés 69 Statut Membre 50
 
Bonsoir,

Quand on change d'hebergeur, tout les codes changes me semble t-il!

LeckyeNews
0
arthezius Messages postés 3756 Statut Membre 475
 
Ben j'ai changé les identifiants de connexion à ma base de données. J'avais fait un code pour l'installation des tables. Celui-ci s'est bien exécuté. J'ai vérifié via PHPmyadmin. Du coup y'a rien qui devrai ne pas allé...

Je vais faire un test en local pour voir déjà si y'a pas un problème avec ça.
0
HostOfSeraphim Messages postés 7340 Statut Contributeur 1 608 > arthezius Messages postés 3756 Statut Membre
 
Se connecter avec les anciens codes d'accès auraient provoqué une autre erreur que celle-ci.

Il semblerait que le problème vienne de ton champ ID autoincrémenté : la configuration du serveur actuel refuserait de "zapper" la valeur d'un champ autoincrémenté.

0
arthezius Messages postés 3756 Statut Membre 475 > HostOfSeraphim Messages postés 7340 Statut Contributeur
 
Y aurai t-il un moyen de résoudre ce problème?
0
arthezius Messages postés 3756 Statut Membre 475 > arthezius Messages postés 3756 Statut Membre
 
Visiblement ça marche qu'en MySQL 4. Avec la version 5 sur mon hébergeur ça me met ce message...

Donc problème résolu pour le moment.
0
HostOfSeraphim Messages postés 7340 Statut Contributeur 1 608
 
Ca doit provenir d'une différence de configuration entre les deux serveurs MySQL.

Fais une recherche sur Google, j'ai l'impression qu'il y a pas mal de sujet avec cette erreur précise.

0
LeckyeNews Messages postés 69 Statut Membre 50
 
Oui, tout a fait!!
0