Fatal error

Fermé
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 - Modifié par jordane45 le 26/06/2016 à 23:40
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 7 juil. 2016 à 21:50
Bonjour,

Voila quand je remplis mon formulaire et que je valide cette erreur s'affiche

Fatal error: Call to a member function execute() on a non-object in /home/idarknes/public_html/bdd.php on line 80

<?php
   $bdd = new mysqli("localhost", "idarknes_****", "****", "idarknes_data");
   $rouge = "rouge" ;
   $bleu =  "bleu" ;
   $vert =  "vert" ;
   $noir =  "noir" ;
   $r = "#B30707";
   $b = "#0785B3";
   $v = "#07B321";
   $n = "#000501";
   
function couleur() {
  if($cl === $rouge)
  { $cl = $r ; }
  else{
   if($cl === $vert)
   { $cl = $v ; }
   else{
    if($cl === $bleu)
    { $cl = $b ; }
    else{
     if($cl === $vert)
     { $cl = $v ; }
     else{
     echo "Erreur #Couleur Contacter Alexis";
      }}}}}

  ?>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php if(isset($_POST['nom'])) { echo $_POST['nom']; } ?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php if(isset($_POST['somme'])) { echo $_POST['somme']; } ?>" />
   
   <select  name="cl" class="bas" value="<?php if(isset($_POST['cl'])) { echo $_POST['cl']; } ?>"> 
    <optgroup label="Couleur" >
     <option>rouge</option>
     <option>bleu</option>
     <option>vert</option>
     <option>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>


<?php

  

 if(isset($_POST['ok']))
  {
   if(!empty($_POST['nom']) AND !empty($POST_['somme']) AND !empty($_POST['cl']))
   {}
  else{ 
    couleur();

    $req = $bdd->prepare("INSERT INTO
     donnateur(somme, nom, couleur)
     VALUES(:somme, :nom, :couleur)");
    $req->execute(array(
      'somme' => $_POST['somme'],
         'nom' => $_POST['nom'],
         'couleur' => $_Post['couleur'] ));


   }

   }
?>
</body>
</html>

EDIT : Ajout du LANGAGE dans les balises de code.


Voila et j'ai beau chercher je ne trouve pas ...


Ne te prend pas la tête sa ne mène nul part.

5 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
27 juin 2016 à 02:02
Bonsoir,

Bon..... j'ai corrigé pas mal d'erreurs dans ton code....
Mauvaise utilisation de la balise SELECT, déclaration de variables inutiles ....
J'ai également récupéré "proprement" tes variables de formulaire AVANT de les utiliser.
J'ai aussi ajouté du débug pour voir d'où proviendrait l'erreur.
Et enfin... j'ai placé le maximum de PHP ... AVANT le HTML ... ça rend les codes plus propres et plus faciles à maintenir plutôt que d'en mettre un peu partout....

Voila le résultat :
<?php
//--------------------------------------------------//
//Affichage des erreurs PHP
//--------------------------------------------------//
error_reporting(E_ALL);

//--------------------------------------------------//
//connexion à la BDD
//--------------------------------------------------//
$bdd = new mysqli("localhost", "idarknes_****", "****", "idarknes_data");

if ($mysqli->connect_error) {
    die('Erreur de connexion : ' . $mysqli->connect_error);
}

//--------------------------------------------------//
// Récupération PROPRE des variables AVANT de les utiliser
//--------------------------------------------------//
  
  $couleur = !empty($_POST['cl']) ? $_POST['cl'] : NULL;
  $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
  $somme = !empty($_POST['somme']) ? $_POST['somme'] : NULL;

  
//--------------------------------------------------//
// Traitement du submit
//--------------------------------------------------//

if($nom && $somme && $couleur) {

  //on sépare les "variables" de l'éxécution de la requete
  $sql = "INSERT INTO donnateur(somme, nom, couleur)
  		    VALUES(:somme, :nom, :couleur)";
  $a_datas = array('somme' => $somme, 'nom' => $nom, 'couleur' => $couleur);

  //execution de la requete
  $prepare = $bdd->prepare($sql);
  if($prepare){
   if(!$prepare->execute($a_datas)){
     //en cas de souci.. affichage de la requete et des variables
     echo '<br>execute() failed: ' . htmlspecialchars($mysqli->error);
     echo "<br>Requete : ".$sql;
     echo "<br>DATAS :<br>";
     print_r($a_datas);
     exit();
   }
 }else{
   die('prepare() failed: ' . htmlspecialchars($mysqli->error));
 }

}
//--------- FIN DU CODE PHP ------------------//
?>
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php echo $nom;?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php echo $somme; ?>" />
   
   <select  name="cl" class="bas"> 
    <optgroup label="Couleur" >
     <option value='#B30707' <?php if($couleur == '#B30707') { echo "selected='selected'";} ?>>rouge</option>
     <option value='#0785B3' <?php if($couleur == '#0785B3') { echo "selected='selected'";} ?>>bleu</option>
     <option value='#07B321' <?php if($couleur == '#07B321') { echo "selected='selected'";} ?>>vert</option>
     <option value='#000501' <?php if($couleur == '#000501') { echo "selected='selected'";} ?>>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>
</body>
</html>

2
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 10
Modifié par Zaxis le 27/06/2016 à 10:47
Merci Mec tu gere de ouf ;) Mais j'ai de nouveau une erreur (version 5.5.50-cll - MySQL Community Server (GPL))

:prepare() failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':somme, :nom, :couleur)' at line 2
0
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 10
29 juin 2016 à 18:20
Up ;)
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
Modifié par jordane45 le 29/06/2016 à 18:34
Je n'avais pas fais gaffe que c'était du mysqli.
du coup .. je ne sais pas si la syntaxe :
 $sql = "INSERT INTO donnateur (somme, nom, couleur)
        VALUES(:somme, :nom, :couleur)";
  $a_datas = array('somme' => $somme, 'nom' => $nom, 'couleur' => $couleur);


est acceptée (contrairement au PDO...)

A la limite, essaye comme ceci :
 $sql = "INSERT INTO donnateur (somme, nom, couleur)
        VALUES(?,?,?)";
  $a_datas = array( $somme,  $nom, $couleur);

0
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 10
29 juin 2016 à 20:27
Ok c'est vrais que j'aurais pu le dire ^^ Bon il m'en sort une line 39

Warning: mysqli_stmt::execute() expects exactly 0 parameters, 1 given in /home/idarknes/public_html/bdd.php on line 39

execute() failed:
Requete : INSERT INTO donnateur (somme, nom, couleur) VALUES(?,?,?)
DATAS :
Array ( [0] => 5 [1] => hh [2] => #07B321 )
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016
29 juin 2016 à 22:29
Visiblement la syntaxe diffère un peu de pdo.
Le execute ne prend aucun paramètres. ... le bind des variables se fait en amont via l'instruction bindparams.
regarde l'exemple de la doc :

http://php.net/manual/fr/mysqli-stmt.execute.php
0
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 10
29 juin 2016 à 23:23
Pff voila voila j'ai lu la doc 12 fois et et bha j'y arrive toujours pas ... je retombe sur Call to a member function prepare() on a non-object in ....
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016
30 juin 2016 à 01:28
Ce n'est plus le même message. ... montre ton code actuel
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
2 juil. 2016 à 13:06
<?php
//--------------------------------------------------//
//Affichage des erreurs PHP
//--------------------------------------------------//
error_reporting(E_ALL);

//--------------------------------------------------//
//connexion à la BDD
//--------------------------------------------------//
$bdd = new mysqli("localhost", "idarknes_Admin", "c6h12o6", "idarknes_data");
if ($bdd->connect_error) {
    die('Erreur de connexion : ' . $bdd->connect_error);
}

//--------------------------------------------------//
// Récupération PROPRE des variables AVANT de les utiliser
//--------------------------------------------------//
  
  $couleur = !empty($_POST['cl']) ? $_POST['cl'] : NULL;
  $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
  $somme = !empty($_POST['somme']) ? $_POST['somme'] : NULL;
  
//--------------------------------------------------//
// Traitement du submit
//--------------------------------------------------//

//--------------------------------------------------//

if($nom && $somme && $couleur) {

  //on sépare les "variables" de l'éxécution de la requete
  $sql = "INSERT INTO donnateur (somme, nom, couleur)
        VALUES(?,?,?)";
  $a_datas= array($somme, $nom, $couleur);

  //execution de la requete
  $prepare = $bdd->prepare($sql);
  if($prepare){
   if(!$prepare->execute($a_datas)){
     //en cas de souci.. affichage de la requete et des variables
     echo '<br>execute() failed: ' . htmlspecialchars($bdd->error);
     echo "<br>Requete : ".$sql;
     echo "<br>DATAS :<br>";
     print_r($a_datas);
     exit();
   }
 }else{
   die('prepare() failed: ' . htmlspecialchars($bdd->error));
 }

}
//--------- FIN DU CODE PHP ------------------//
?>
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php echo $nom;?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php echo $somme; ?>" />
   
   <select  name="cl" class="bas"> 
    <optgroup label="Couleur" >
     <option value='#B30707' <?php if($couleur == '#B30707') { echo "selected='selected'";} ?>>rouge</option>
     <option value='#0785B3' <?php if($couleur == '#0785B3') { echo "selected='selected'";} ?>>bleu</option>
     <option value='#07B321' <?php if($couleur == '#07B321') { echo "selected='selected'";} ?>>vert</option>
     <option value='#000501' <?php if($couleur == '#000501') { echo "selected='selected'";} ?>>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>
</body>
</html>

0
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 10
2 juil. 2016 à 16:33
Warning: mysqli_stmt::execute() expects exactly 0 parameters, 1 given in /home/idarknes/public_html/bdd2.php on line 39

execute() failed:
Requete : INSERT INTO donnateur (somme, nom, couleur) VALUES(?,?,?)
DATAS :
Array ( [0] => 5 [1] => gg [2] => #B30707 )
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
2 juil. 2016 à 16:44
Ah oui c'est vrai. .. je t'avais indiqué que tu devais faire le bind des variables en dehors du execute en mysqli...
regarde la doc tu as un exemple
0
Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016 10
2 juil. 2016 à 16:50
okok sa marche ;)
je vais faire sa
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > Zaxis Messages postés 30 Date d'inscription samedi 4 juin 2016 Statut Membre Dernière intervention 2 juillet 2016
2 juil. 2016 à 16:57
Dans la doc : https://www.php.net/manual/fr/mysqli-stmt.bind-param.php
par exemple :
$stmt = $mysqli->prepare("INSERT INTO CountryLanguage VALUES (?, ?, ?, ?)");
$stmt->bind_param('sssd', $code, $language, $official, $percent);

$code = 'DEU';
$language = 'Bavarian';
$official = "F";
$percent = 11.2;

/* Exécution de la requête */
$stmt->execute();
0
Zaxis ( vac) > jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024
7 juil. 2016 à 11:28
Fatal error: Call to a member function prepare() on a non-object in /home/idarknes/public_html/bdd.php on line 35
<?php
//--------------------------------------------------//
//Affichage des erreurs PHP
//--------------------------------------------------//
error_reporting(E_ALL);

//--------------------------------------------------//
//connexion à la BDD
//--------------------------------------------------//
$bdd = new mysqli("localhost", "idarknes_Admin", "c6h12o6", "idarknes_data");

if ($bdd->connect_error) {
    die('Erreur de connexion : ' . $bdd->connect_error);
}

//--------------------------------------------------//
// Récupération PROPRE des variables AVANT de les utiliser
//--------------------------------------------------//
  
  $couleur = !empty($_POST['cl']) ? $_POST['cl'] : NULL;
  $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
  $somme = !empty($_POST['somme']) ? $_POST['somme'] : NULL;
	$mysql = NULL ;
  
//--------------------------------------------------//
// Traitement du submit
//--------------------------------------------------//

if($nom && $somme && $couleur) {

  //on sépare les "variables" de l'éxécution de la requete
  $sql = "INSERT INTO donnateur (somme, nom, couleur)
        VALUES(?,?,?)" ;

        $a_datas = $mysql->prepare("INSERT INTO donnateur VALUES(?,?,?)");
  $a_datas->bind_param('iss', $somme ,$nom ,$couleur);



  //execution de la requete
  $a_datas->execute();
  if($a_datas){
   if(!$prepare->execute($a_datas)){
     //en cas de souci.. affichage de la requete et des variables
    echo '<br>execute() failed: ' . htmlspecialchars($bdd->error);
    echo "<br>Requete : ".$sql;
	echo "<br>DATAS :<br>";
   print_r($a_datas);
     exit();
   }
 }else{
   die('prepare() failed: ' . htmlspecialchars($bdd->error));
 }

}
//--------- FIN DU CODE PHP ------------------//
?>
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php echo $nom;?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php echo $somme; ?>" />
   
   <select  name="cl" class="bas"> 
    <optgroup label="Couleur" >
     <option value='#B30707' <?php if($couleur == '#B30707') { echo "selected='selected'";} ?>>rouge</option>
     <option value='#0785B3' <?php if($couleur == '#0785B3') { echo "selected='selected'";} ?>>bleu</option>
     <option value='#07B321' <?php if($couleur == '#07B321') { echo "selected='selected'";} ?>>vert</option>
     <option value='#000501' <?php if($couleur == '#000501') { echo "selected='selected'";} ?>>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>
</body>
</html>
0
Ouaip
<?php
//--------------------------------------------------//
//Affichage des erreurs PHP
//--------------------------------------------------//
error_reporting(E_ALL);

//--------------------------------------------------//
//connexion à la BDD
//--------------------------------------------------//
$bdd = new mysqli("localhost", "idarknes_Admin", "c6h12o6", "idarknes_data");

if ($bdd->connect_error) {
    die('Erreur de connexion : ' . $bdd->connect_error);
}

//--------------------------------------------------//
// Récupération PROPRE des variables AVANT de les utiliser
//--------------------------------------------------//
  
  $couleur = !empty($_POST['cl']) ? $_POST['cl'] : NULL;
  $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
  $somme = !empty($_POST['somme']) ? $_POST['somme'] : NULL;
 $mysql = NULL ;
  
//--------------------------------------------------//
// Traitement du submit
//--------------------------------------------------//

if($nom && $somme && $couleur) {

  //on sépare les "variables" de l'éxécution de la requete
  $sql = "INSERT INTO donnateur (somme, nom, couleur)
        VALUES(?,?,?)" ;

        $a_datas = $bdd->prepare("INSERT INTO donnateur VALUES(?,?,?)");
  $a_datas->bind_param('iss', $somme, $nom, $couleur);



  //execution de la requete
  $a_datas->execute();
  if($a_datas){
   if(!$prepare->execute($a_datas)){
     //en cas de souci.. affichage de la requete et des variables
    echo '<br>execute() failed: ' . htmlspecialchars($bdd->error);
    echo "<br>Requete : ".$sql;
 echo "<br>DATAS :<br>";
   print_r($a_datas);
     exit();
   }
 }else{
   die('prepare() failed: ' . htmlspecialchars($bdd->error));
 }

}
//--------- FIN DU CODE PHP ------------------//
?>
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php echo $nom;?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php echo $somme; ?>" />
   
   <select  name="cl" class="bas"> 
    <optgroup label="Couleur" >
     <option value='#B30707' <?php if($couleur == '#B30707') { echo "selected='selected'";} ?>>rouge</option>
     <option value='#0785B3' <?php if($couleur == '#0785B3') { echo "selected='selected'";} ?>>bleu</option>
     <option value='#07B321' <?php if($couleur == '#07B321') { echo "selected='selected'";} ?>>vert</option>
     <option value='#000501' <?php if($couleur == '#000501') { echo "selected='selected'";} ?>>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>
</body>
</html>

0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
7 juil. 2016 à 15:21
regarde bien :
  //execution de la requete
  $a_datas->execute();
  if($a_datas){
   if(!$prepare->execute($a_datas)){
0
Je ne voit pas ou est le problème ??
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > Zaxis ( vac)
7 juil. 2016 à 17:19
Tu ne vois pas ???
  $a_datas->execute();

$prepare->execute($a_datas)
0
Ha oui
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Toujours la même erreur
<?php
//--------------------------------------------------//
//Affichage des erreurs PHP
//--------------------------------------------------//
error_reporting(E_ALL);

//--------------------------------------------------//
//connexion à la BDD
//--------------------------------------------------//
$bdd = new mysqli("localhost", "idarknes_Admin", "c6h12o6", "idarknes_data");

if ($bdd->connect_error) {
    die('Erreur de connexion : ' . $bdd->connect_error);
}

//--------------------------------------------------//
// Récupération PROPRE des variables AVANT de les utiliser
//--------------------------------------------------//
  
  $couleur = !empty($_POST['cl']) ? $_POST['cl'] : NULL;
  $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
  $somme = !empty($_POST['somme']) ? $_POST['somme'] : NULL;
 $mysql = NULL ;
  
//--------------------------------------------------//
// Traitement du submit
//--------------------------------------------------//

if($nom && $somme && $couleur) {

  //on sépare les "variables" de l'éxécution de la requete
  $sql = "INSERT INTO donnateur (somme, nom, couleur)
        VALUES(?,?,?)" ;

        $a_datas = $bdd->prepare("INSERT INTO donnateur VALUES(?,?,?)");
  $a_datas->bind_param('iss', $somme, $nom, $couleur);



  //execution de la requete
  $a_datas->execute();
  if($a_datas){
   if(!$a_datas->execute()){
     //en cas de souci.. affichage de la requete et des variables
    echo '<br>execute() failed: ' . htmlspecialchars($bdd->error);
    echo "<br>Requete : ".$sql;
 echo "<br>DATAS :<br>";
   print_r($a_datas);
     exit();
   }
 }else{
   die('prepare() failed: ' . htmlspecialchars($bdd->error));
 }

}
//--------- FIN DU CODE PHP ------------------//
?>
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php echo $nom;?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php echo $somme; ?>" />
   
   <select  name="cl" class="bas"> 
    <optgroup label="Couleur" >
     <option value='#B30707' <?php if($couleur == '#B30707') { echo "selected='selected'";} ?>>rouge</option>
     <option value='#0785B3' <?php if($couleur == '#0785B3') { echo "selected='selected'";} ?>>bleu</option>
     <option value='#07B321' <?php if($couleur == '#07B321') { echo "selected='selected'";} ?>>vert</option>
     <option value='#000501' <?php if($couleur == '#000501') { echo "selected='selected'";} ?>>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>
</body>
</html>
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
7 juil. 2016 à 18:01
<?php
//--------------------------------------------------//
//Affichage des erreurs PHP
//--------------------------------------------------//
error_reporting(E_ALL);

//--------------------------------------------------//
//connexion à la BDD
//--------------------------------------------------//
$bdd = new mysqli("localhost", "idarknes_Admin", "nils2000", "idarknes_data");
if ($bdd->connect_error) {
    die('Erreur de connexion : ' . $bdd->connect_error);
}

//--------------------------------------------------//
// Récupération PROPRE des variables AVANT de les utiliser
//--------------------------------------------------//
  
  $couleur = !empty($_POST['cl']) ? $_POST['cl'] : NULL;
  $nom = !empty($_POST['nom']) ? $_POST['nom'] : NULL;
  $somme = !empty($_POST['somme']) ? $_POST['somme'] : NULL;
  
//--------------------------------------------------//
// Traitement du submit
//--------------------------------------------------//

if($nom && $somme && $couleur) {

  //on sépare les "variables" de l'éxécution de la requete
  $sql = "INSERT INTO donnateur (somme, nom, couleur)
          VALUES(?,?,?)" ;

  $prepare = $bdd->prepare($sql);
  $prepare->bind_param('iss', $somme, $nom, $couleur);

  if(!$prepare->execute()){
     //en cas de souci.. affichage de la requete et des variables
     echo '<br>execute() failed: ' . htmlspecialchars($bdd->error);
     echo "<br>Requete : ".$sql;
     exit(); 
  }else{
   die('prepare() failed: ' . htmlspecialchars($bdd->error));
  }

}
//--------- FIN DU CODE PHP ------------------//
?>
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet"  href="Css2.css" />
   <meta name="Description" content="Page d'acceuil Idarkness">
    <meta http-equiv="content-language" content="fr" />
    <meta charset="utf-8" />
    <meta name="keywords" content="Idarkness,Steam,live,Gmod,Jeux Indé,streamer,Idarkness,paredise">
    <link href='http://fonts.googleapis.com/css?family=Ubuntu|Lobster' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Poiret+One' rel='stylesheet' type='text/css'>
    <link href='http://fonts.googleapis.com/css?family=Sigmar+One' rel='stylesheet' type='text/css'>
 <title>Donnateurs</title>
</head>
<body>
 <form  class="f1" method="POST" action="">
   <div id="info"><p>Ajouter un donnateur <br></p></div>
   
   <div id="info"><p>Pseudo </p></div>
   <input type="texte" name="nom"   placeholder="Psedeau twhitch"  class="bas" value="<?php echo $nom;?>" />
   
   <div id="info"><p>Somme </p></div>
   <input type="texte" name="somme"   placeholder="Somme en €"  class="bas" value="<?php echo $somme; ?>" />
   
   <select  name="cl" class="bas"> 
    <optgroup label="Couleur" >
     <option value='#B30707' <?php if($couleur == '#B30707') { echo "selected='selected'";} ?>>rouge</option>
     <option value='#0785B3' <?php if($couleur == '#0785B3') { echo "selected='selected'";} ?>>bleu</option>
     <option value='#07B321' <?php if($couleur == '#07B321') { echo "selected='selected'";} ?>>vert</option>
     <option value='#000501' <?php if($couleur == '#000501') { echo "selected='selected'";} ?>>noir</option>
    </optgroup>
   </select>
   <input type="submit" class="f1" value="Inscrire" name="ok"/>
  </form>
</body>
</html>

0
prepare() failed:

Tu crois que je suis maudit ?
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > Zaxis ( vac)
7 juil. 2016 à 18:21
Et rien d'autre dans le message d'erreur ?
0
nan sinon j’aurais chercher un peut mais la rien
0
Après j'ai un champ Id en Ai dans ma bdd sa peut venir de la ?
0