Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法从数据库中检索数据以插入到另一个表单中_Php_Mysql_Sql_Database - Fatal编程技术网

Php 无法从数据库中检索数据以插入到另一个表单中

Php 无法从数据库中检索数据以插入到另一个表单中,php,mysql,sql,database,Php,Mysql,Sql,Database,我有这个表单,它将操作发布到test2.php <form action="test2.php" method="post" name="add"> <tr> IC NUMBER:<input name="defIc" value="" type="varchar" size="20" maxlength="20"> NAME:<input name="defName" value="" type="varchar

我有这个表单,它将操作发布到test2.php

     <form action="test2.php" method="post" name="add">
     <tr>
     IC NUMBER:<input name="defIc" value="" type="varchar" size="20" maxlength="20">
     NAME:<input name="defName" value="" type="varchar" size="60" maxlength="60">

    <input name="reset" type="reset" value="RESET">
    <input type="submit" name="add" value=" ADD GUARANTOR ">
    </form>

IC编号:
姓名:
这是我的test2.php代码。在这个test2.php中,我结合了add过程将数据存储在“被告”表中。在test2.php中,我还包括另一个表单,它需要回调“被告IC”和“IC编号”

           <?php   
    if (isset($_POST['add'])) {
        $defIc = addslashes($_POST['defIc']);
        $defName = addslashes($_POST['defName']);
        include 'dbconnect.php';

        $query = "INSERT INTO defendant (defIc, defName) VALUES 
            ('$defIc', '$defName')";


        echo $result = mysql_query($query);

    if ($result)
    {
    if (isset($result['defIc']))
        $defIc = $result['defIc'];
    else
        $defIc = 0;
    include 'dbconnect.php';
    $query = "Select * from defendant where defIc = '".$defIc."'";

    $result = mysql_query($query1) or die('SQL error');

    $row = mysql_fetch_array($result);
            ?>  
        DEFENDANT IC:<input name="defIc" value="<?php echo $row['defIc']; ?>"       
            type="varchar" size="20" maxlength="20" />
            DEFENDANT NAME:<input name="defName" value="<?php echo $row['defName']; ?>"          
            type="varchar" size="20" maxlength="20" />
           " 
            <?php 
    }

         else
            echo 'Add failed';   
    }
    ?>

碰巧,这段代码中的bug比最初设想的要多。这需要做很多工作

<?php
//Only include a connection once!
include_once ('dbconnect.php');  
//If the 'add' button was pressed. 
if (isset($_POST['add'])) {

    //What type of data is this? This is very insecure code.
    //Look at preg_replace or mysqli_real_eascape_string to sanitise data

    $defIc = addslashes($_POST['defIc']);
    $defName = addslashes($_POST['defName']);


    $query = "INSERT INTO defendant (defIc, defName) VALUES 
        ('$defIc', '$defName')";


    //Why did you echo the result?
    $result = mysql_query($query);

if ($result)
{
if (isset($result['defIc']))
    $defIc = $result['defIc'];
else
    $defIc = 0;
$query = "Select * from defendant where defIc = '$defIc'";

$result = mysql_query($query1) or die('SQL error');

$row = mysql_fetch_array($result);
        ?>  
    DEFENDANT IC:<input name="defIc" value="<?php echo $row['defIc']; ?>"       
        type="varchar" size="20" maxlength="20" />
        DEFENDANT NAME:<input name="defName" value="<?php echo $row['defName']; ?>"          
        type="varchar" size="20" maxlength="20" />
       " 
        <?php 
}

     else
        echo 'Add failed';   
}
?>

请解释您所做的更改,以便OP和其他阅读您答案的人知道您所做的更改。@Tony所做的更改通过PHP注释功能进行注释//