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

kahlahan Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -  
Eastchild Messages postés 319 Date d'inscription   Statut Membre Dernière intervention   -
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 :/

3 réponses

Eastchild Messages postés 319 Date d'inscription   Statut Membre Dernière intervention   31
 
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   Statut Membre Dernière intervention   31
 
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   Statut Membre Dernière intervention  
 
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