-1

我正在尝试在更新之前编辑数据库。首先我尝试使用 echo 编辑数据库,之后我想更新同一个表中的所需字段。请在下面找到我的代码....请帮助...我需要获取来自数据库患者的值,需要在同一个表中更新....

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

    <head>
        <title>Form Edit Data</title>
    </head>

    <body>
        <table border=1>
            <tr>
                <td align=center>MODIFY PATIENT DATA</td>
            </tr>
            <tr>
                <td>
                    <table>
                        <? include "db.php";//database connection $pid=$_POST[ 'pid']; $name=$_POST[
                        'name']; $age=$_POST[ 'age']; $sex=$_POST[ 'sex']; $mobileno=$_POST[
                        'mobileno']; $vaccine=$_POST[ 'vaccine']; $diagno=$_POST[ 'diagno']; $fee=$_POST[
                        'fee']; $order=s printf( "SELECT * FROM `hms`.`patient` WHERE pid='%s'", mysql_real_escape_string($pid));
                        $result=m ysql_query($order); if (!$result) die( 'Error: (' . mysql_errno()
                        . ') ' . mysql_error()); $row=m ysql_fetch_assoc($result); ?>
                        <form method="post" action="update1.php">
                            <table style=" border:5px solid silver" cellpadding="10px" cellspacing="10px"
                            align="center" border="0">
                                <tr>
                                    <td colspan="4" style="background:#0066FF; color:#FFFFFF; fontsize:20px">PATIENT DETAILS</td>
                                </tr>
                                <tr>
                                    <td>Patient Name</td>
                                    <td>
                                        <input type="text" name="name" size="20" value=<?php echo $row[ 'name'];
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Patient ID</td>
                                    <td>
                                        <input type="text" name="pid" size="20" value=<?php echo $row[ 'pid'];
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Age</td>
                                    <td>
                                        <input type="text" name="age" size="10" value=<?php echo $row[ 'age'];
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Sex</td>
                                    <td>
                                        <input type="text" name="sex" size="20" value=<?php echo $row[ 'sex'];
                                        ?>?>">
                                        <tr>
                                            <td>Mobile No.</td>
                                            <td>
                                                <input type="text" name="mobileno" size="20" value=<?php echo $row[
                                                'mobileno']; ?>
                                            </td>
                                        </tr>
                                        <tr>
                                            <td>Diagnosis</td>
                                            <td>
                                                <input type="text" name="diagno" size="40" value=<?php echo $row[
                                                'diagno']; ?>
                                            </td>
                                        </tr>
                                        <tr>
                                            <td>Vaccine</td>
                                            <td>
                                                <input type="text" name="vaccine" size="20" value=<?php echo $row[
                                                'vaccine']; ?>
                                            </td>
                                        </tr>
                                        <tr>
                                            <td>Fee Received</td>
                                            <td>
                                                <input type="text" name="fee" size="20" value=<?php echo $row[ 'fee'];
                                                ?>
                                                <tr>
                                                    <td align="right">
                                                        <input type="submit" name="submit value" value="UPDATE">
                                                    </td>
                                                </tr>
                        </form>
                        </table>
                        </td>
                        </tr>
                    </table>
    </body>

</html>

我的表显示如下值:

Patient Name <? echo   ">
Patient ID   <? echo   ">
.
.
.
.
Fee Received <? echo    ">

它显示<? echo ">我尝试使用<?php echo ">但给出错误....

4

1 回答 1

2

改变这样的事情的所有实例:

<? echo "$row[age]"?>

对此:

<?=$row['age']?>

<?=(whatever)?>是 php echo 命令的简写,我所做的另一个更改是从$row[age]变量周围删除引号,并放入age引号。这是因为age它指的是 db 行列的名称,而不是 PHP 常量,所以它必须放在引号中才能正常工作。必须对所有其他类似的 db 列调用进行相同的更改。

编辑:由于您的服务器似乎禁用了短标签,而不是使用短回声(<?=$val?>),您需要使用<?php echo $val ?> <?更改to的每个实例<?php。我相信正在发生的事情是 db 代码没有执行,这意味着您的$row变量永远不会被实例化以回显给用户。

此外,正如其他人所指出的那样,这些mysql_*功能已被弃用,不再受支持。您应该切换到mysqli_*函数或 PDO,以确保您的代码不会因 php 软件更新而停止工作。

于 2013-08-28T03:48:18.507 回答