Je ne comprends plus là, need help S.V.P

Fermé
kahlahan Messages postés 91 Date d'inscription lundi 16 mai 2011 Statut Membre Dernière intervention 16 juin 2011 - 31 mai 2011 à 09:49
Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 - 1 juin 2011 à 14:43
Bonjour,


J'ai créer un site Prestashop sur lequel j'ai rajouter un FreeBlock.

Dans ce freeblock j'ai inséré le code suivant :


1 <form action="modules/freeblock/sql-freeblock.php" method="post"
enctype="multipart/form-data">
<gras>2 <input type="checkbox" name="valid" id="valid" value="1"/> <label
for="valid">Désirez-vous recevoir une carte postale personalisé?</label><br />
3 <p>Veuillez saisir le message que vous souhaitez joindre.</p>
4 <input type="text" name="message">
5 <br>
6 <p>Pour optimiser la personnalisation de votre carte postale nous vous proposons
:</p>
7 <br>    
8 <input type="checkbox" name="img1" id="img1" value="1"/> <label
for="img1">Thème océan</label><br />
9 <img src="modules/freeblock/ocean.jpg" alt="ocean.jpg"/>
10 <br>    
11 <input type="checkbox" name="img2" id="img2" value="1"/> <label
for="img2">Thème montagne</label><br />
12 <img src="modules/freeblock/montagne.jpg" alt="montagne.jpg"/>
13 <br>    
14 <input type="checkbox" name="img3" id="img3" value="1"/> <label
for="img3">Thème campagne</label><br />
15 <img src="modules/freeblock/campagne.jpg" alt="campagne.jpg"/>
16 <br><br>
17 <input type="submit" name="submit" value="Envoyer le fichier" />
18 </form>

J'ai maintenant plusieurs problèmes: ( je met des screenshots pour montrer mes erreurs, cela fera plus Propre )

1°) Lorsque sur ma page je ne sélectionne que le thème Océan et que je clique sur suivant le message d'erreur suivant apparait :
https://imageshack.com/


2°) Lorsque je clique sur le thème montagne :
https://imageshack.com/


3°) Lorsque je clique sur le thème campagne:
https://imageshack.com/


4°) Si je sélectionne les 3 en même temps.
https://imageshack.com/


Ces erreurs, que sont elles ? Et comment puis je les modifier ?

Merci d'avoir pris le temps de lire ce Topic jusqu'au bout.

Merci pour votre aide, la, je suis perdu :/
A voir également:

3 réponses

Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 31
1 juin 2011 à 14:43
Bonjour,

Ce code PHP pique un peu les yeux. il manque l'ouverture et la fermeture des zones prises en compte par les if. Ensuite, remplace les if($_POST) par des if(isset($_POST)).

if(isset($_POST["img1"])){
   $img_confirmation = $_POST["img1"];
}
if(isset($_POST["img2"])){
   $img_confirmation = $_POST["img2"];
}else{
   echo "toto";
}
if(isset($_POST["img3"])){
   $img_confirmation = $_POST["img3"]; 
}


Après, il faut que tu simplifies ta table avec un seul champ img_confirmation. Il faudra aussi simplifier ta requête SQL :

$query = "INSERT INTO $table
VALUES('$valid_confirmation','$message_confirmation','$img_confirmation')"; 

1
Eastchild Messages postés 319 Date d'inscription lundi 23 juillet 2007 Statut Membre Dernière intervention 28 mars 2012 31
31 mai 2011 à 10:48
Bonjour,

Il s'agit là d'erreur PHP. Le serveur t'indique qu'il ne connait pas les variables img1, img2, img3, img1_confirmation, img2_confirmation et img3_confirmation.

Il faudrait que tu postes ton code php qu'on puisse t'aider correctement.
0
kahlahan Messages postés 91 Date d'inscription lundi 16 mai 2011 Statut Membre Dernière intervention 16 juin 2011
31 mai 2011 à 11:17
Alors voici le code Php qui est censé communiqué avec la BDD :

<?php

/* déclaration de quelques variables */
$host = "localhost";
$user = "root";
$pass = "";
$bdd = "prestashop";
$table="ps_order_confirmation";

/* connection avec MySQL */

MYSQL_CONNECT($host,$user,$pass) or die("Impossible de se
connecter à la base de données");
@mysql_select_db("$bdd") or die("Impossible de se connecter à
la base de données");

$valid_confirmation = $_POST["valid"];
$message_confirmation = $_POST["message"];
if($_POST["img1"])
$img1_confirmation = $_POST["img1"];
if($_POST["img2"])
$img1_confirmation = $_POST["img2"];
else
echo "toto";
if($_POST["img3"])
$img1_confirmation = $_POST["img3"];
$submit_confirmation = $_POST["submit"];

if ($submit = 1)
{
/* stockage dans la bdd */
$query = "INSERT INTO $table
VALUES('$valid_confirmation','$message_confirmation','$img1_confirmation','$img2_confirmation','$img3_confirmation')";
$result = MYSQL_QUERY($query);
print "Les information sont enrégistrées." ;
}
else
{
print "Vous ne désirez pas de carte personnalisée.";
}

?>

J'espère que cela pourra vous aider.
0