php - 将 ID 从一个表发布到另一个表

标签 php mysql

我在数据库中有两个表,输入表和输出表。输入表有两列$ID(自动增量)、$question。表 2 有两列 $Q_ID, Answer

我制作了一个 php 页面 (1),在其中打印了表 1 内容(问题),并添加了一个文本区域以从访问者那里获取答案,同时我还添加了一个回显“隐藏”字段以获取表中的 ID一。

现在这个 php 页面 1 重定向到 php 页面 2,我将输入的文本区域发布到表 2 中的答案列中。但不幸的是,ID 无法发布到表 2 的 q_id 列中... 我尝试了很多但没有希望..

我的 PHP 脚本 #1 如下::

<div class="name">
    <?php 
    $sql = "SELECT * FROM input";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) { 
        $index = 0; 
        while($row = $result->fetch_assoc()) { 
            $index++; // stuff inside foreach goes here 
            ?>

            <div id="q">
                <B><big><font color= #ba4a00> Q:</font></big> <?php echo $row["question"]; ?> 

                <?php 
                echo '<button class="add" id="add_'.$index.'"><B>Add Answer</B></button>';
                echo '<form style="display:none;" name="answer_'.$index.'" method="post" action="output.php">'; 
                echo '<input type="hidden" name="questionid" value="<?php echo $row[id]?>"/>';
                echo '<textarea  type="text" class="addtext" name="addtext" required id="addtext_'.$index.'" placeholder="Please type your answer here.."  ></textarea>';
                echo '<button onClick="addsubmit('.$index.');" type="submit" id="addsubmit_'.$index.'" class="addsubmit"><B>Submit</B></button>';
                echo '</form>';
                ?>
            </div>
        <?php     
        }
    } else {
        echo "0 results";
    }
    $conn->close();
    ?>
</div>

我的 PHP 脚本 #2 如下::

<?php include('1.php'); ?>
<?php
    $servername  = "localhost";
    $dbusername = "root";
    $dbpassword = "*******";
    $dbname = "the_database";
    $addtext = $_POST['addtext'];
    $questionid = $_POST['questionid'];
    $date = date_default_timezone_set('Asia/Kolkata');
    $date = date('M-d,Y H:i:s');
    $conn = new mysqli ($servername, $dbusername, $dbpassword, $dbname);
    if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
    }
    $sql = "INSERT INTO output (question_id, answer, date)
    VALUES ('$questionid', '$addtext', '$date')";
    if ($conn->query($sql) === TRUE) {
    echo '<script language="javascript">';
    echo 'alert("Your Answer has been Succesfully posted")';
    echo '</script>';
    echo '<a href="1.php"></a>';
    }
    else {
    echo "ERROR" . $sql . "<br>" . $conn->error;
    }
    $conn->close();
 ?>

我希望将相应的问题 ID 及其答案传递到表 2。
非常感谢任何帮助..

最佳答案

$row['id']中给出单引号。更改此<?php echo $row[id] >?<?php echo $row['id'] >?

echo '<input type="hidden" name="questionid" value="'. $row['id'].'"/>';

关于php - 将 ID 从一个表发布到另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39324123/

相关文章:

PHP第一个while循环的输出结果作为第二个while循环的查询变量

PHP 从 CSV 导入不会用空白覆盖旧数据

mysql - 使用无符号整数的算术元素(加法)进行 SQL 范围分区 - 它会优化 WHERE 查询吗? (MySQL、PostgreSQL)

mysql - MySql SSl 连接问题

php - 转义字符未按预期工作

php - SQL 匹配所有关键字的开头

php - JSON 将记录插入 Salesforce

php - 显示带有来自 MySQL 的 URL 的图像

mysql - 为什么这个 mysql 查询只返回 null?

php - 如何使用 PHP 从字符串中提取 IMG 标签、值和文本