multidimensional array mysqli inserrt

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • multidimensional array mysqli inserrt

    Code:
    if (isset($_POST['aktion']) and $_POST['aktion']=='speichern') {
    
        $stringitem2 = "";
        if (isset($_POST['stringitem2'])) {
        $stringitem2 = trim($_POST['stringitem2']);
    	}
    	$LeaderSID = "";
        if (isset($_POST['LeaderSID'])) {
        $LeaderSID = trim($_POST['LeaderSID']);
        }
        if ( $LeaderSID != '' or $stringitem2 != '' )
        {
    $string_arr = array('Mname', 'Mmail');
    $result = array();
    
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    foreach(explode('-',$stringitem2) as $key => $value){
        $result[$key] = array_combine($string_arr,explode(',',$value));
    }
       echo "<br>" ;
       var_dump($result);
       echo "<br>" ;
    
    
    // Insert each record
    foreach($result as $insertRow){
    // Prepare statement
    $stmt = $conn->prepare("INSERT INTO linkliste (LeaderSID , Mname, Mmail) VALUES ( LeaderSID , Mname, Mmail)");
    // now loop through each inner array to match binded values
    foreach($insertRow as $column => $value){
    $stmt->bind_param('sss' {$column}, $value);
    //$stmt -> bind_param('sss', $set['replace'], $set['search']);
                               
    }
    // Execute statement to add to transaction
    $stmt->execute();
    ich möchte eine team liste fertig machen
    mit
    1 team leiter id
    2 member name
    3 emal
    >> name0,mai0l-name1,mail1-name2,mail2 <<<
    ich bekomme die LeaderSID über die $_GET übertragen
    und die möchte ich mit der Information der mitglieder in eine DB speichern

    mit
    echo "<br>" ;
    var_dump($result);
    echo "<br>" ;
    bekomme ich den inhalt der arry auch angezeigt

    aber die LeaderSID nicht und es wird auch nichst in die DB gespeichert

    ich bekomme es aber nicht so hin wie ich es gerne möchte
    und ich weiss auch nicht wo nach ich genau suchen sollte

    kann mir da bitte einer weiter helfen

    ich bekomme das angezeigt
    Fatal error: Uncaught Error: Call to a member function bind_param() on bool i
    Last edited by chackohite; 11-11-2020, 13:26. Reason: Fatal error

  • #2
    multidimensional array mysqli inserrt

    Originally posted by chackohite View Post
    Code:
    if (isset($_POST['aktion']) and $_POST['aktion']=='speichern') {
    
        $stringitem2 = "";
        if (isset($_POST['stringitem2'])) {
        $stringitem2 = trim($_POST['stringitem2']);
    	}
    	$LeaderSID = "";
        if (isset($_POST['LeaderSID'])) {
        $LeaderSID = trim($_POST['LeaderSID']);
        }
        if ( $LeaderSID != '' or $stringitem2 != '' )
        {
    $string_arr = array('Mname', 'Mmail');
    $result = array();
    
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    foreach(explode('-',$stringitem2) as $key => $value){
        $result[$key] = array_combine($string_arr,explode(',',$value));
    }
       echo "<br>" ;
       var_dump($result);
       echo "<br>" ;
    
    
    // Insert each record
    foreach($result as $insertRow){
    // Prepare statement
    $stmt = $conn->prepare("INSERT INTO linkliste (LeaderSID , Mname, Mmail) VALUES ( LeaderSID , Mname, Mmail)");
    // now loop through each inner array to match binded values
    foreach($insertRow as $column => $value){
    $stmt->bind_param('sss' {$column}, $value);
    //$stmt -> bind_param('sss', $set['replace'], $set['search']);
                               
    }
    // Execute statement to add to transaction
    $stmt->execute();
    ich möchte eine team liste fertig machen
    mit
    1 team leiter id
    2 member name
    3 emal
    >> name0,mai0l-name1,mail1-name2,mail2 <<<
    ich bekomme die LeaderSID über die $_GET übertragen
    und die möchte ich mit der Information der mitglieder in eine DB speichern

    mit
    echo "<br>" ;
    var_dump($result);
    echo "<br>" ;
    bekomme ich den inhalt der arry auch angezeigt

    aber die LeaderSID nicht und es wird auch nichst in die DB gespeichert

    ich bekomme es aber nicht so hin wie ich es gerne möchte
    und ich weiss auch nicht wo nach ich genau suchen sollte

    kann mir da bitte einer weiter helfen

    ich bekomme das angezeigt
    Fatal error: Uncaught Error: Call to a member function bind_param() on bool i

    Code:
    <?php
    
    if (isset($_POST['aktion']) and $_POST['aktion']=='speichern') {
    
        $LeaderSID = "";
        if (isset($_POST['LeaderSID'])) {
        $LeaderSID = trim($_POST['LeaderSID'] .',');
    	}
    	$Memurl = "";
        if (isset($_POST['Memurl'])) {
       echo  $Memurl = trim($_POST['Memurl']);
        }
        if ( $LeaderSID != '' or $Memurl != '' )
        {
    $Memurl= 'id1,Mem1,https-id1,Mem2,https-id1,Mem3,https';
        $string_arr = array($LeaderSID , 'Mid' , 'url');
         echo "<br>" ;
          var_dump($string_arr);//// da zeigt er alles richtig an
        echo "<br>" ;
    $result = array();
    foreach(explode('-',$Memurl) as $key => $value){
        $result[$key] = array_combine($string_arr,explode(',',$value));
    }
    //
    $prep = array();
    foreach($result as $k => $v ) {
       $prep[':'.$k] = $v;
         echo "<br>" ;
          var_dump($v); //// Warning: array_combine()
        echo "<br>" ;
    }
    
    }}
    ?>
    kann mir bitte einer weiter helfen und mir ein tipp geben wo ran es liegt

    Comment


    • #3
      "call to a member function on bool" ist i.d.R. ein Fehler im SQL-Statement, am besten stellst du auf deiner Entwicklungsmaschine ein, dass solche Fehler immer direkt angezeigt werden:

      Code:
      mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

      Comment

      Working...