2015-09-22 35 views
7

ile MySQL 'e 2 dizi ben bu addschedule.phptakın PHP

<?php 
include_once("connect.php"); 
    if(!empty($_POST['jam'])){ 
     foreach($_POST['jam'] as $jmt){ 
      echo $jmt."<br>"; 
      echo $_POST['nampro']; 
     } 
    } 
?> 

i istiyorum bu enter image description here

gibi görünüyor olduğunu edecektir ardından

<form action="addschedule.php" method="post"> 
<?php 
     $n = 0; 
     $c = 0; 
     echo "<Select name='jam[]'>"; 
     do{ 
      if($c>10){$n="";} 
      echo "<option>".$n.$c.":00</option>"; 
      echo "<option>".$n.$c.":30</option>"; 
      $c++; 
     }while($c<24); 
?> 
<input type="text" name="nampro[]"></td> 
<input type="submit" id="submit" class="btn btn-success" value="submit"> 
</form> 
<input class="btn btn-primary" id="addrow" value="Add Row"> 

dizisi ile 2 form var 'jam' ve 'nampro'yu mysql içine sokun

$result=$mysqli->query('INSERT INTO SCHEDULE VALUES ('$jam','$nampro'); 

ama nasıl 'nampro' alabilirim veya başka birinin bunu yapmanın daha iyi bir yolu var mı? PHP'de yeniyim, bu yüzden herkes yardımcı olabilir mi?

+0

sizin ekran görüntüsünde 'nampro' giriş alanıdır deneyin? –

+0

giriş türü metni – Wingke

+0

"123", echo $ _POST ['nampro']; '? – jitendrapurohit

cevap

4

i hem dizi aynı uzunlukta olduğunu görebilirsiniz, böylece aşağıdakileri yapabilirsiniz gibi:

$jam = $_POST['jam']; 
$namePro = $_POST['nampro']; 

$sql = array(); 
foreach($jam as $key=>$val) { 
    $sql[] = '("'.$val.'", '.$namePro[$key].')'; 
} 
$result = $mysqli->query('INSERT INTO SCHEDULE VALUES '.implode(',', $sql)); 

Açıklama:

INSERT INTO:

$jam = ['test','google','facebook','yahoo']; 
$namePro = [123,112,110,100]; 

$sql = array(); 
foreach($jam as $key=>$val) { 
    $sql[] = '("'.$val.'", '.$namePro[$key].')'; 
} 
echo('INSERT INTO SCHEDULE VALUES '.implode(',', $sql)); 

size çıktı verecektir SCHEDULE VALUES ("test", 123), ("google", 112), ("facebook", 110), ("yahoo", 100)

1

Bu kodu

<?php 
include_once("connect.php"); 
    if(!empty($_POST['jam'])){ 
     $namproPost  = $_POST['nampro']; 
     foreach($_POST['jam'] as $key=>$jmt){ 
      // echo $jmt."<br>"; 
      $nampro = $namproPost[$key]; 
      $result=$mysqli->query('INSERT INTO SCHEDULE VALUES ($jmt,$nampro)'); 
     } 
    } 
?> 
+0

Çünkü "$ nampro" sorguyu bir dizi doğrudan kullanamazsınız. '$ Nampro [0] 'gibi değer dizisini belirtmelisiniz. – Manwal

+0

Her iki cevap işe yarıyor, teşekkürler! – Wingke