Insertion dans une table
amn
-
Reivax962 Messages postés 3672 Date d'inscription Statut Membre Dernière intervention -
Reivax962 Messages postés 3672 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai créer une table users, ou tout les inscrit sont, et j'ai rajouter à cette table des colonnes pour pouvoir rajouter un abonnement : date, abonnement, id_commentaire,id_article. Pour les id je sais le nom n'a rien à voir j'ai juste repris les mêmes noms qu'une autre table pour faire les tests.
Donc le soucis est que dès que je choisi un abonnement, seul id article se rempli, et crée automatiquement un "nouveau client", et ne rajoute donc pas l abonnement au client connecté.
Voici le code :
-if(isset($_POST['submit']))
{
$pd = htmlspecialchars(trim(mysql_real_escape_string($_POST['pd'])));
$cl = htmlspecialchars(trim(mysql_real_escape_string($_POST['cl'])));
$vip = htmlspecialchars(trim(mysql_real_escape_string($_POST['vip'])));
$ms = htmlspecialchars(trim(mysql_real_escape_string($_POST['ms'])));
$gd = htmlspecialchars(trim(mysql_real_escape_string($_POST['gd'])));
if(empty($pd) && empty($cl) && empty($vip) && empty($ms) && empty($gd))
{
echo "Veuillez sélectionner au moins un abonnement !";
}
else
{
inserer_commentaire($pseudo, $commentaire);
header("location: abologin.php?id={$_GET['id']}");
}
}
La fonction pour inserer :
<?php
function inserer_commentaire($pseudo, $commentaire)
{
mysql_query("INSERT INTO users VALUE('','{$_GET['id']}','$pd','$cl','$vip','$ms','$gd', NOW())") or die(mysql_error());
}
?>
et le formulaire :
<FORM method="post" action="">
Pass day<input type="radio" name="pd"/><br>
Classic<input type="radio" name="cl"/><br>
Vip<input type="radio" name="vip"/><br>
Malsch<input type="radio" name="ms"/><br>
GOLD<input type="radio" name="gd"/><br>
<input type="submit" name="submit"/>
</FORM>
j'ai créer une table users, ou tout les inscrit sont, et j'ai rajouter à cette table des colonnes pour pouvoir rajouter un abonnement : date, abonnement, id_commentaire,id_article. Pour les id je sais le nom n'a rien à voir j'ai juste repris les mêmes noms qu'une autre table pour faire les tests.
Donc le soucis est que dès que je choisi un abonnement, seul id article se rempli, et crée automatiquement un "nouveau client", et ne rajoute donc pas l abonnement au client connecté.
Voici le code :
-if(isset($_POST['submit']))
{
$pd = htmlspecialchars(trim(mysql_real_escape_string($_POST['pd'])));
$cl = htmlspecialchars(trim(mysql_real_escape_string($_POST['cl'])));
$vip = htmlspecialchars(trim(mysql_real_escape_string($_POST['vip'])));
$ms = htmlspecialchars(trim(mysql_real_escape_string($_POST['ms'])));
$gd = htmlspecialchars(trim(mysql_real_escape_string($_POST['gd'])));
if(empty($pd) && empty($cl) && empty($vip) && empty($ms) && empty($gd))
{
echo "Veuillez sélectionner au moins un abonnement !";
}
else
{
inserer_commentaire($pseudo, $commentaire);
header("location: abologin.php?id={$_GET['id']}");
}
}
La fonction pour inserer :
<?php
function inserer_commentaire($pseudo, $commentaire)
{
mysql_query("INSERT INTO users VALUE('','{$_GET['id']}','$pd','$cl','$vip','$ms','$gd', NOW())") or die(mysql_error());
}
?>
et le formulaire :
<FORM method="post" action="">
Pass day<input type="radio" name="pd"/><br>
Classic<input type="radio" name="cl"/><br>
Vip<input type="radio" name="vip"/><br>
Malsch<input type="radio" name="ms"/><br>
GOLD<input type="radio" name="gd"/><br>
<input type="submit" name="submit"/>
</FORM>
A voir également:
- Insertion dans une table
- Table ascii - Guide
- Insertion table des matières word - Guide
- Touche insertion clavier - Guide
- Insertion filigrane word - Guide
- Insertion liste déroulante excel - Guide
1 réponse
Bonjour,
Les variables $pd, $cl, $vip, $ms, $gd ne sont pas définies à l'intérieur de la fonction.
Tu peux soit les déclarer en global, mais ce n'est pas très conseillé, soit les passer en paramètres de la fonction.
D'ailleurs, les paramètres $pseudo et $commentaire ne sont pas utilisés...
Les variables $pd, $cl, $vip, $ms, $gd ne sont pas définies à l'intérieur de la fonction.
Tu peux soit les déclarer en global, mais ce n'est pas très conseillé, soit les passer en paramètres de la fonction.
D'ailleurs, les paramètres $pseudo et $commentaire ne sont pas utilisés...
inserer_commentaire($pd, $cl, $vip, $ms, $gd); [...] function inserer_commentaire($pd, $cl, $vip, $ms, $gd) { mysql_query("INSERT INTO users VALUE('','{$_GET['id']}','$pd','$cl','$vip','$ms','$gd', NOW())") or die(mysql_error()); }