我在html中有一个表格,通过php(mysql)打印数据。我希望通过按下每个记录旁边的按钮,我会显示相关记录的值并打印显示的值。
我几乎成功了,但每次按下时我只拿第一个记录按钮,而不是同一行。
<?php
$data = 'sito';
$db = mysqli_connect('localhost', 'root', '', $data);
$result= mysqli_query ($db, "SELECT * FROM prodotti");
echo"<table id='tabella' width='800' border='1'>";
echo"<tr>
<th >Codice</th>
<th >Nome</th>
<th >Giacenza</th>
<th> Azioni </th>
<th >Data consegna</th>
</tr>";
while($row=mysqli_fetch_array($result)){
echo"<tr>
<td id='cod'>".$row['Codice']."</td>
<td id='nom'>".$row['Nome']."</td>
<td id='gia'>".$row['Giacenza']."</td>
<td id='dat'>
<button id='pulsante' onClick='giacenza()'>pulsante</button>
</td>
<td id='datac'>";
$dat=$row['Data consegna'];
$data=substr($dat,8,2)."-".substr($dat,5,2)."-".substr($dat,0,4);
echo $data."</td>
</tr>";}
echo"</table>";
?>
这里的PHP代码
遗憾
var d = document.createElement("div");
d.setAttribute("id", "modifica");
var String = "<textarea id='textarea' rows='1' cols='3'></textarea> <input type='text' id='input'></input> <button type='submit' id = 'boton'>aggiorna </button>";
d.innerHTML = String;
var g = document.getElementById("gia").textContent;
document.body.appendChild(d);
document.getElementById("textarea").innerHTML = g;
答案 0 :(得分:0)
您放在每条记录旁边的按钮都是相同的。您不会以任何方式知道您按下哪个按钮。尝试这样的事情:
<button id='pulsante' onClick='giacenza(".$row['Codice'].")'>pulsante</button>
并更改您的giacenza
javascript函数,将Codice作为参数,并使用它来识别正在操作哪条记录。
我认为Codice
是您的商品代码或记录中唯一的内容。如果你没有这样的领域,你需要提出一些建议。
您还需要其他任何内容的唯一标识符,例如您正在操作的文本框。不使用"MyBox"
的ID,而是使用"MyBox_".$row['Codice']
答案 1 :(得分:0)
我建议将值作为参数传递给函数
PHP代码
<?php
$data = 'sito';
$db = mysqli_connect('localhost', 'root', '', $data);
$result= mysqli_query ($db, "SELECT * FROM prodotti");
echo"<table id='tabella' width='800' border='1'>";
echo"<tr>
<th >Codice</th>
<th >Nome</th>
<th >Giacenza</th>
<th> Azioni </th>
<th >Data consegna</th>
</tr>";
while($row=mysqli_fetch_array($result)){
echo"<tr>
<td id='cod'>".$row['Codice']."</td>
<td id='nom'>".$row['Nome']."</td>
<td id='gia'>".$row['Giacenza']."</td>
<td id='dat'>
<!-- Next line has the change -->
<button id='pulsante' onClick='giacenza(/"".$row['Giacenza']."/")'>pulsante</button>
</td>
<td id='datac'>";
$dat=$row['Data consegna'];
$data=substr($dat,8,2)."-".substr($dat,5,2)."-".substr($dat,0,4);
echo $data."</td>
</tr>";
}
echo"</table>";
?>
你的javascript代码: 它不是从元素中获取值,而是使用传递参数
中的值function giacenza(g){
var d = document.createElement("div");
d.setAttribute("id", "modifica");
var String = "<textarea id='textarea' rows='1' cols='3'></textarea> <input type='text' id='input'></input> <button type='submit' id = 'boton'>aggiorna </button>";
d.innerHTML = String;
document.body.appendChild(d);
document.getElementById("textarea").innerHTML = g;
}