Javascript 我试图用php代码更新记录。但是我的代码有问题
我试图用php代码更新记录。但是我的代码有问题 代码运行时没有使用函数(get40(),show()),但我想使用按钮调用这些函数。 代码如下: 这是主代码文件:Javascript 我试图用php代码更新记录。但是我的代码有问题,javascript,php,html,mysql,Javascript,Php,Html,Mysql,我试图用php代码更新记录。但是我的代码有问题 代码运行时没有使用函数(get40(),show()),但我想使用按钮调用这些函数。 代码如下: 这是主代码文件: <?php $data; $count=0; $host='localhost'; $uname='root'; $pass=""; $dbname="testing"; $db=new mysqli($host,$uname,$pass,$dbname); $r
<?php
$data;
$count=0;
$host='localhost';
$uname='root';
$pass="";
$dbname="testing";
$db=new mysqli($host,$uname,$pass,$dbname);
$result;
$query;
if (mysqli_connect_errno()) {
echo 'Error: Could not connect to database. Please try again later.';
exit;
}
function get40($off='0', $rcd='2')
{
global $db,$result,$query;
$query="SELECT sword, tword, reviewed from TempDictionary LIMIT $off,$rcd";
$result = $db->query($query)or trigger_error($db->error);
}
function show()
{
global $db,$result,$query;
echo "<form action='testSave.php' method='POST'>";
echo "<table border=1 >";
while($row = mysqli_fetch_array($result))
{
global $count;
$count+=1;
echo "<tr>";
echo "<td><input type='text' name='s[]' value=" . $row['sword'] . "></td>";
echo "<td><input type='text' name='t[]' value=" . $row['tword'] . "></td>";
echo "<td><input type='text' name='r[]' size='1' value=" .$row['reviewed'] . "></td>";
echo "</tr>";
}
echo "</table>";
echo "<input type='text' name='no' size='2' value=" .$count. ">";
echo "<input type='submit' value='Save'>";
echo "</form>";
}
//get40(1,2);
//show();
mysqli_close($db);
?>
<script type="text/javascript">
function get()
{
<?php
get40(0,3);
show();
?>
}
</script>
<form action="" method="POST">
<input type=button name=btnGet value=Get onclick="get()">
</form>
AFAIK您正在尝试使用Javascript代码运行PHP代码。
使用Jquery/Ajax解决您的问题。你可以在谷歌上搜索或者查看stackoverflow
步骤1:了解点击按钮如何运行PHP
第2步:学习如何使用数据库中的数据并用其填充表单:
这是解决问题的第一步。(很抱歉,这不是复制/粘贴解决方案,只是一个指向正确方向的指针)似乎您正在将HTML嵌入Javascript标记中。如果您想让JS函数调用PHP函数,则需要通过HTTP请求执行此操作。您不能在JS函数中嵌入PHP函数。只需在此答案中添加一点(100%正确):PHP在服务器中执行,您创建的javascript/HTML响应发送到客户端(web浏览器),在那里,函数get40()不存在,并且没有任何意义,因为web浏览器不执行PHP代码,只输出所述代码的text/html/javascript/css结果。
<?php
$no=$_POST['no'];
$i=0;
$s=$_POST['s'];
$t=$_POST['t'];
$r=$_POST['r'];
$host='localhost';
$uname='root';
$pass="";
$dbname="testing";
$db=new mysqli($host,$uname,$pass,$dbname);
if (mysqli_connect_errno()) {
echo 'Error: Could not connect to database. Please try again later.';
exit;
}
// display
foreach ($s as $key=>$value)
{
print "$key = $value $t[$key] $r[$key]";
echo '<br>';
}
// save to DB
foreach ($s as $key=>$value)
{
// $query="UPDATE TempDictionary set sword=".$value.",tword=".$t[$key].",reviewed=".$r[$key]."
// WHERE sword=".$value;
$query="UPDATE TempDictionary set sword='$value',tword='$t[$key]',reviewed='$r[$key]'
WHERE sword='$value'";
$result = $db->query($query)or trigger_error($db->error);
}
mysqli_close($db);
?>