2013-07-14 74 views
0

我會再次嘗試詢問此問題。希望這次更有意義!從MYSQL查詢的結果中循環並插入表中

我的網頁上有一個用戶可編輯的單元格。我想連接到MYSQL數據庫並搜索字段以輸入到該單元格中的文本,對於找到的每個結果,我想向表中添加一個新行。我知道如何連接到數據庫,我知道如何通過html創建查詢。我不知道並希望得到一些指導,是循環遍歷每個結果並使用變量完成查詢的機制!

我添加的行

<script> 
function getsearchresults() 
{ 
var table=document.getElementById("myTable"); 
var row=table.insertRow(-1); 
var cell1=row.insertCell(0); 
var cell2=row.insertCell(1); 
var cell3=row.insertCell(2); 
var cell4=row.insertCell(3); 
cell1.innerHTML= Variable1heremaybe?; 
cell2.innerHTML="Variable2heremaybe?; 
cell3.innerHTML="Variable3heremaybe?; 
cell4.innerHTML="Variable4heremaybe?; 
} 
</script> 
</head> 
<body> 

<table style="margin-top:350px; margin-left:25px;" id="myTable" border="1"> 
    <tr> 
    <td>column1 <div style="width: 100px"> </div></td> 
    <td>column2 <div style="width: 100px" > </div></td> 
    <td>column3 <div style="width: 100px" > </div></td> 
    <td>column4 <div style="width: 100px" > </div></td> 

</table> 

查詢搜索代碼

<?php 
// Create connection 
$con=mysqli_connect("bla","blabla","blablabla","blablabla"); 

// Check connection 
if (mysqli_connect_errno($con)) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

SELECT `Table1`.`Column1` 
FROM Table1 
WHERE (`Table1`.`Column1` Variableheremayb?) 
ORDER BY `Table1`.`Column1` ASC 
?> 

任何幫助將不勝感激代碼!

回答

0

,你可以這樣做: 這裏我假設你已經成功地連接到數據庫

//first execute the query 

$result = mysqli_query("Your query"); 

//then fetch the result of each row using a loop 

while($row = mysqli_fetch_assoc($result)) 
{ 
    //here you can display the data or store it in a variable or anything else you want 
    // for example you want to display it inside div tag. 
    echo "<div>".$row["column1"]."</div>"; 
    echo "<div>".$row["column2"]."</div>"; 
    //and so on 

} 

我希望這能有一定的幫助。

+0

謝謝!然而,我似乎無法得到一個新的行添加到表中,而在while語句中,因此顯然不能添加結果。我不熟悉。$ row [「column1」],這是否假設我們的活動結果的column1中的數據填充了「mytable」中的新行? [鏈接](http://www.w3schools.com/jsref/met_table_insertrow.asp)這是我正在尋找的影響,但與我們的查詢每個結果! – Phil

+0

你是否熟悉ajax –

+0

否:(哈哈,有點noob我很害怕!我很新編程 – Phil

0

首先我建議在HTML中將你的行單元命名爲cell[]。它們將作爲一個數組發佈,更容易循環。

<table> 
    <tr> 
    <td><input type="text" name="cell[]" /></td> 
    <td><input type="text" name="cell[]" /></td> 
    <td><input type="text" name="cell[]" /></td> 
    </tr> 
</table> 

服務器側部:

<?php 

// Connect to MySQL 
... 

// Validate your form inputs 
... 
$cells = yourInputFilter($_POST['cell']); 
... 

// Build query 
$cellSql = implode(',', $cells); 

$sql = "SELECT * 
     FROM table1 
     WHERE column1 IN ($cellSql) 
     ORDER BY column1";