2016-05-17 5 views
1

Ich möchte mehrere Zeilen in meiner Datenbank in der gleichen Zeit mit einem Formular hinzufügen, aber mein Erfolg für jede SQL-Anfrage ist falsch, ich weiß nicht, was zu tun ist :(Mehrere hinzufügen in mehreren SQL-Anfrage?

Es ist für Charts.js, ich muss setzen jedes Mal im Jahr (annee), die amout (montant) und den Namen des compagny (Societe)

Jede Zeile meiner Datenbank wie folgt aussehen:. ID | Societe | annee | montant

Meine Form:

<form action="ca/ajout-ca.php" method="post" enctype="multipart/form-data"> 
    <h3>ANNÉE</h3> 
    <div class="form-group"> 
      <label for="annee"></label> 
      <input type="text" name="annee" id="annee" class="form-control" /> 
     </div> 
     <h4>GROUPE</h4> 
     <div class="form-group"> 
      <label for="montant_groupe"></label> 
      <input type="text" name="montant_groupe" id="montant_groupe" class="form-control" /> 
     </div>       
     <br> 
     <h4>APRIME</h4> 
     <div class="form-group"> 
      <label for="montant_aprime"></label> 
      <input type="text" name="montant_aprime" id="montant_aprime" class="form-control" /> 
     </div>       
     <br> 
     <h4>ENTI</h4> 
     <div class="form-group"> 
      <label for="montant_enti"></label> 
      <input type="text" name="montant_enti" id="montant_enti" class="form-control" /> 
     </div>       
     <br> 
     <h4>S2MI</h4> 
     <div class="form-group"> 
      <label for="s2mi"></label> 
      <input type="text" name="montant_s2mi" id="montant_s2mi" class="form-control" /> 
     </div>       
     <br> 
     <h4>JBM41</h4> 
     <div class="form-group"> 
      <label for="montant_s2mi"></label> 
      <input type="text" name="montant_s2mi" id="montant_s2mi" class="form-control" /> 
     </div>       
     <br> 
     <button type="submit" class="btn btn-primary">Valider</button> 
    </form> 

Meine sql-Datei hinzufügen

<?php 
require_once('../connexion.php'); 

$return = array('success' => false); 
$return1 = array('success' => false); 
$return2 = array('success' => false); 
$return3 = array('success' => false); 
$return4 = array('success' => false); 


$annee   = isset($_POST['annee']) ? $_POST['annee'] : null; 
$montant_groupe = isset($_POST['montant_groupe']) ? $_POST['montant_groupe'] : null; 
$montant_aprime = isset($_POST['montant_aprime']) ? $_POST['montant_aprime'] : null; 
$montant_enti = isset($_POST['montant_enti']) ? $_POST['montant_enti'] : null; 
$montant_s2mi = isset($_POST['montant_s2mi']) ? $_POST['montant_s2mi'] : null; 
$montant_jbm41 = isset($_POST['montant_jbm41']) ? $_POST['montant_jbm41'] : null; 

var_dump($_POST); 

if(!is_null($annee) && !is_null($montant_groupe) &&  !is_null($montant_aprime) && !is_null($montant_enti) && !is_null($montant_s2mi)  && !is_null($montant_jbm41)){ 

$sql = "INSERT INTO ca SET annee = '$annee', montant = '$montant_groupe', societe = 'groupe'"; 
       $return['success'] = $connexion->exec($sql); 

$sql1 = "INSERT INTO ca SET annee = '$annee', montant = '$montant_aprime', societe = 'aprime'"; 
       $return1['success'] = $connexion->exec($sql1); 

$sql2 = "INSERT INTO ca SET annee = '$annee', montant = '$montant_enti', societe = 'enti'"; 
       $return2['success'] = $connexion->exec($sql2); 

$sql3 = "INSERT INTO ca SET annee = '$annee', montant = '$montant_s2mi', societe = 's2mi'"; 
       $return3['success'] = $connexion->exec($sql3); 

$sql4 = "INSERT INTO ca SET annee = '$annee', montant = '$montant_jbm41', societe = 'jbm41'"; 
       $return4['success'] = $connexion->exec($sql4); 
} 

echo json_encode($return); 
echo json_encode($return1); 
echo json_encode($return2); 
echo json_encode($return3); 
echo json_encode($return4); 
/* 
header('Location: ../admin_ca.php');*/ 

meine $return(number) zurückkehren mich bei jeder Zeile falsch und das Ergebnis meiner vardump ist gut, es ist meine Zahl der Form

Danke für die Hilfe Jungs aufzunehmen!

+1

Zuerst müssen Sie zuerst den Code in '$ sql = 'EINFÜGEN IN ca SET annee = \' fixieren. $ annee. '\', montant = \ ''. $ montant_groupe. '\', societe = \ '' groupe \ '' 'zu' ... \ 'groupe \' ''. Dann wäre es nützlich, den Inhalt von 'connexion.php' vor einer weiteren Beratung zu zeigen. –

+0

Sie machen es Ihnen schwer mit all den einzelnen zitierten literalen und fliehenden Sachen. Suche nach 'variable expansion' in Double Quoted Strings' $ sql = "Setze in ca ein SET annee = '$ annee', montant = '$ montant_groupe', societe = 'groupe'"; ' – RiggsFolly

+0

Du solltest in der Regel parametrisierte Abfragen verwenden Sie verwenden nicht vertrauenswürdige Daten aus dem $ _POST-Array, um [SQL Injection Attack] zu vermeiden (http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php) – RiggsFolly

Antwort

0

fand ich das Problem, ich habe einen Fehler in meiner Form setze ich 2 Typ den gleichen Namen "montant_s2mi" anstelle von "montant_s2mi" und "montant_jbm41"

Also, wenn meine if (! Is_null) Start mein "montant_jbm41" war null, und mein kann, wenn ich in die sql Anfrage eintragen kann.

Verwandte Themen