lolero

Inscris le 02/03/2009 à 16:28
  • Nombre de sujets
    2
  • Nombre de messages
    11
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

lolero
le 14/09/2009 à 17:18
Sondage
Oui jeca ça marche, merci
lolero
le 13/09/2009 à 15:32
Sondage
Je vais essayer la méthode de jeca
lolero
le 13/09/2009 à 11:31
Sondage
Bon mais est-ce qu'il y a une solution réelle à mon problème ?
lolero
le 13/09/2009 à 01:01
Sondage
Oki alors je vais faire ainsi :

<?php if(!empty($_POST['choix'.$nombre_de_verifs.'']))
{
$message = '<strong><a href="afficher_sondage.php">ici</a></strong>';
mysql_query("INSERT INTO sondage_choix VALUES ('', ?, ?, '".$_POST['choixmachin']."'");
} ?>


Les ? correspondent respectivement aux id du sondage et de la question. Comment les récupérer autrement que par un mysql_insert_id() étant donné que les insertions dans les tables sondage et question ne se font qu'en dessous, au sein de la condition if($ok == true){} ?

Merci
lolero
le 12/09/2009 à 14:04
Sondage
Et si je faisais un array avec une boucle foreach... ça reviendrait au même au niveau ressources ?
lolero
le 12/09/2009 à 10:04
Sondage
Oui, mais une requête dans une boucle n'est-ce pas déconseillé niveau ressources ?
lolero
le 11/09/2009 à 20:35
Sondage
pas de réponses ? pourtant je suis sûr que c'est facile à réaliser :(
lolero
le 10/09/2009 à 16:29
Sondage
Bon ok alors je vais réexpliquer :)

J'ai un dossier sécurisé avec des sessions, nommé "admin".
Pour créer un sondage, je vais sur la page creer1 et j'y insère la question ainsi que le nombre de réponses. Le formulaire pointe alors sur creer2 et affiche avec une boucle for le nombre d'input correspondant. Une fois ce second formulaire validé, on tombe sur traitement qui enregistre les données dans la table après avoir vérifié que tous les champs étaient remplis. Voici son code :

<?php 
$nb_rep = $_POST['nb_rep'];

if (isset($_POST['question']))
{
if(!empty($_POST['question']))
{
$ok = true;
for($nombre_de_verifs = 0; $nombre_de_verifs <= $nb_rep; $nombre_de_verifs++)
{
if(isset($_POST['choix'.$nombre_de_verifs]))
{
if(!empty($_POST['choix'.$nombre_de_verifs.'']))
{
$message = '<strong><a href="afficher_sondage.php">ici</a></strong>';
}

else
{
$ok = false;
break;
}


}

}

}
elseif(empty($_POST['question']))
{
echo '<strong>No</strong>';
}
}

if(isset($ok))
{
if($ok == true)
{
echo $message;

// Je me connecte à la base de données
include("../includes/identifiants.php");
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);

// Je balance le tout dans la table sondages
$auteur = $_SESSION['pseudo'];
$question = $_SESSION['question'];
mysql_query("INSERT INTO sondages VALUES('','".$auteur."','','','1')") or die(mysql_error());

//Je récupère l'id de ma table sondages
$id_sondages = mysql_insert_id();

// J'insère maintenant mes données dans sondage_question
mysql_query("INSERT INTO sondage_question VALUES('','".$id_sondages."','".$question."')") or die(mysql_error());

// Je recupère maintenant l'id de ma table sondage_question
$id_sondage_question = mysql_insert_id();

// Insertion
mysql_query
("
INSERT INTO sondage_choix (sondage_choix_id, sondage_id, sondage_question_id, sondage_choix, sondage_nb_vote)
VALUES(),()
") or die(mysql_error());

}
}

?>
lolero
le 09/09/2009 à 20:13
Sondage
Bonsoir,

Je souhaiterai mettre en place un sondage sur mon site. Malheureusement, je rencontre un problème : dans la page traitement.php de ma zone admin, je n'arrive pas à enregistrer dans ma table choix plusieurs entrées à la fois tout en sachant que ce nombre d'entrées est variable et dépend de la valeur que contiens $nombre_de_reponses.

J'espère avoir été assez clair...

Merci d'avance :)
LoadingChargement en cours