bonjour,
j'ai un soucis d'enregistrement de donnée dans une base et je ne trouve pas l'erreur :
ya 5 champs : id, nom, prenom , mot_de_passe, email
j'ai le message d'erreur suivant :
Warning: sprintf(): Too few arguments in D:\xxx\xxx.com\testbase\inscription.php on line 44
Query was empty
pourtant j'ai bien déclaré les variables POST avec isset() bref suis perdu!!!
je voudrais aussi rajouter une fonction crypt() pour le mot de passe mais je ne sais pas ou la placer.
quelqun peux m'aider.
voici mon code au cas ou :
<?php require_once('Connections/test.php'); ?>
<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ( !isset($_POST["nom"]) ) $_POST["nom"] = "";
if ( !isset($_POST["prenom"]) ) $_POST["prenom"] = "";
if ( !isset($_POST["mot_de_passe"]) ) $_POST["mot_de_passe"] = "";
if ( !isset($_POST["email"]) ) $_POST["email"] = "";
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO testes (ID, nom, prenom, mot_de_passe, email) VALUES (%s, %s, %s, %s, %s)",
GetSQLValueString($_POST['nom'], "text"),
GetSQLValueString($_POST['prenom'], "text"),
GetSQLValueString($_POST['mot_de_passe'], "text"),
GetSQLValueString($_POST['email'], "text"));
mysql_select_db($database_agorap, $agorap);
$Result1 = mysql_query($insertSQL, $agorap) or die(mysql_error());
$insertGoTo = "page2.htm";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
?>
vraiment je vois l'erreur :-(( heeelppp
# nombre de %s ?
Posté par Hardy Damien . Évalué à 3.
Dam
[^] # Re: nombre de %s ?
Posté par debutanteP . Évalué à 1.
pas d'idée pour crypt()
merci!
[^] # chiffrement du password
Posté par Hardy Damien . Évalué à 3.
http://dev.mysql.com/doc/refman/5.0/fr/encryption-functions.(...)
Dam
[^] # Re: nombre de %s ?
Posté par Sebastian . Évalué à 2.
http://www.php.net/crypt
[^] # Re: nombre de %s ?
Posté par debutanteP . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.