javascript - 我正在尝试通过 php 代码更新记录。但我的代码遇到问题

标签 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);
    $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>

savetest.php 文件是:

    <?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);  
?>

问题是当我单击按钮时它不起作用。

最佳答案

据我所知,您正在尝试使用 Javascript 代码运行 PHP 代码。 使用 Jquery/Ajax 来解决您的问题。您可以通过 Google 搜索或查看 stackoverflow。

第 1 步:了解单击按钮如何运行 PHP Run php function inside jQuery click

第 2 步:了解如何使用数据库中的数据并用其填充表单: ajax call to populate form fields from database query when select value changes

这是解决您的问题的第一步。 (抱歉,这不是复制/粘贴解决方案,只是指向正确方向的指针)

关于javascript - 我正在尝试通过 php 代码更新记录。但我的代码遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24241819/

相关文章:

javascript - 在 WordPress 页面中运行内联 jQuery 脚本是否可行?

javascript - 字符串转 jQuery 函数

javascript - 我是否已达到数组中对象的限制?

javascript - 旋转期间 HTML 元素呈现不佳

javascript - 这会成为竞争条件吗? (JavaScript)

javascript - Highcharts : How do I keep the marker formatting and make the click event fire with a 5K+ point scatter plot?

PHP 将时间四舍五入到最接近的 15 秒

php - 我是否需要在加载了 ajax 的 PHP 页面中再次包含 PHP 脚本?

html - 单击后如何修复将 css 更改为按钮

javascript - Raphaël JS 中的循环动画