Insertion des données avec php

Résolu
Bonjour,
j'ai ecrit un code php pour l'insertion de mes données des fiches excel dans ma base sql mais l'insertion ne s'affecte pas svp qq1 de vous peux m'aider!!!
Le code est le suivant:

<?php

ini_set("maximum_execution_time", 3000000000000000000000000000000000000);
require_once 'Excel/reader.php';
$mabasededonnee="rose";

$connection = mysql_connect('localhost','root','');
// test la connection
if ( ! $connection )
die ("connection impossible");
// Connecte la base
mysql_select_db($mabasededonnee) or die ("pas de connection");

// ExcelFile($filename, $encoding);
$data = new Spreadsheet_Excel_Reader();

error_reporting(E_ALL ^ E_NOTICE);
// Set output Encoding.
$data->setOutputEncoding('CP1251');

$data->read('liste des clients Adel Abida Cap Bon.xls');

// echo $data->sheets[0]['numRows'];
// exit;

//error_reporting(E_ALL ^ E_NOTICE);

for ($i = 3; $i <= $data->sheets[0]['numRows']; $i++)
{
//Ref
$requet= "INSERT INTO vtiger_accounts (account_no , accountname , phone , fax) VALUES ('".$data->sheets[0]['cells'][$i][1]."', '".$data->sheets[0]['cells'][$i][2]."',
'".$data->sheets[0]['cells'][$i][5]."' , '".$data->sheets[0]['cells'][$i][6]."')";

$requet= "insert into vtiger_accountbillads ( bill_street , bill_city) values ('".$data->sheets[0]['cells'][$i][3]."', '".$data->sheets[0]['cells'][$i][4]."')";

mysql_query($requet,$connection);

}
mysql_close($connection);

?>

1 réponse

  1. Bonjour,

    Je voit que tu as 2 requête insert, laquelle ne fonctionne pas ?
    Ensuite, je pense que ton problème vient du fait que tes 2 requêtes sont incrémenté dans la même variable ce qui à mon avis pose problème.
    Soit tu fait un mysql_query après chaque requête soit tu fait ça (bien entendu, je te laisse modifier les ...) :
    $requet .= "BEGIN;";
    $requet .= "INSERT .......;";
    $requet .= "INSERT........;";
    $requet .= "END;";
    mysql_query($requet, $connection);
    *

    Cordialement.

    0
    1. même j'ai modifier le nom des requêtes et j'ai fais le mysql_query de chaque requête toute seule mais ça ne marche pas
      0
    2. Bonjour,

      Peux-tu montrer ton code actuel stp ?
      Peux-tu aussi essayer en modifiant tes mysql_query($requet, $connection); par mysql_query($requet); ?
      Lorsque tu exécute avec ou sans la modification, as-tu un message d'erreur ?

      Cordialement.
      0
    3. Mon code actuel est le suivant:
      <?php
      
      ini_set("maximum_execution_time", 3000000000000000000000000000000000000);
      require_once 'Excel/reader.php';
      $mabasededonnee="rose";
       
      $connection = mysql_connect('localhost','root','');
      // test la connection
      if ( ! $connection )
        die ("connection impossible");
        // Connecte la base
      mysql_select_db($mabasededonnee, $connection) or die ("pas de connection"); 
      
      // ExcelFile($filename, $encoding);
      $data = new Spreadsheet_Excel_Reader();
      
      error_reporting(E_ALL ^ E_NOTICE);
      // Set output Encoding.
      $data->setOutputEncoding('CP1251');
      
      $data->read('liste des clients Adel Abida Cap Bon.xls');
      
      
      
      //error_reporting(E_ALL ^ E_NOTICE);
      
      for ($i = 3; $i <= $data->sheets[0]['numRows']; $i++) 
      {
      //Ref
      
      $requet1= "INSERT INTO vtiger_accounts (account_no , accountname , phone , fax) VALUES ('".$data->sheets[0]['cells'][$i][1]."', '".$data->sheets[0]['cells'][$i][2]."',
      '".$data->sheets[0]['cells'][$i][5]."' , '".$data->sheets[0]['cells'][$i][6]."')";
      mysql_query($requet1,$connection);
      
      
      $requet2= "INSERT INTO vtiger_accountbillads ( bill_street , bill_city) VALUES  ('".$data->sheets[0]['cells'][$i][3]."', '".$data->sheets[0]['cells'][$i][4]."')";
      mysql_query($requet2,$connection);
      
      
      }
      mysql_close($connection); 
      
      ?>
      

      et meme si je met seulement mysql_query($requet) ne m'affiche pas une erreur
      0
    4. Bonjour,

      Le mysql_select_db($mabasededonnee, $connection) or die ("pas de connection"); n'est pas nécessaire dans ton cas vu que tu as juste une seule base de connecté.
      Ensuite, as-tu testé tes requêtes dans le requêteur ?
      As-tu également essayer de vérifier les données que tu insére dans tes requêtes tel que $data->sheets[0]['cells'][$i][4] ?
      0
    5. oui j' vérifié tous j'ai mis après chaque requêtes un echo qui m'a affiché les données du fichiers excel mais l'insertion ne s'affecte pas je ne sais pas pourquoi
      0