没有从数据库输出到表

布拉德利·库普兰

这是给 Codesee 的。我在此页面上收到未定义的索引错误。但我猜你能做的最好的就是翻译,如果这样的话,那就太棒了。如果我们可以暂时保留帖子,因为我目前正在协助我的回答,那将非常感谢!

<?php

    $host="localhost"; // Host name 
    $username=""; // Mysql username 
    $password=""; // Mysql password 
    $db_name=""; // Database name
    $tbl_name="forum_answer"; // Table name 

    // Connect to server and select databse.
    mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
    mysql_select_db("$db_name")or die("cannot select DB");

    // Get value of id that sent from hidden field 
    $id=$_POST['id'];

    // Find highest answer number. 
    $sql="SELECT MAX(a_id) AS Maxa_id FROM $tbl_name WHERE question_id='$id'";
    $result=mysql_query($sql);
    $rows=mysql_fetch_array($result);

    // add + 1 to highest answer number and keep it in variable name "$Max_id". if there no answer yet set it = 1 
    if ($rows) {
    $Max_id = $rows['Maxa_id']+1;
    }
    else {
    $Max_id = 1;
    }

    // get values that sent from form 
    $a_name=$_POST['a_name'];
    $a_email=$_POST['a_email'];
    $a_answer=$_POST['a_answer']; 

    $datetime=date("d/m/y H:i:s"); // create date and time

    // Insert answer 
    $sql2="INSERT INTO $tbl_name(question_id, a_id, a_name, a_email, a_answer, a_datetime)VALUES('$id', '$Max_id', '$a_name', '$a_email', '$a_answer', '$datetime')";
    $result2=mysql_query($sql2);

    if($result2){
    echo "Successful<BR>";
    echo "<a href='view_topic.php?id=".$id."'>View your answer</a>";

    // If added new answer, add value +1 in reply column 
    $tbl_name2="forum_question";
    $sql3="UPDATE $tbl_name2 SET reply='$Max_id' WHERE id='$id'";
    $result3=mysql_query($sql3);
    }
    else {
    echo "ERROR";
    }

    // Close connection
    mysql_close();
    ?>

这是要编辑的新代码-----------

<?php

$host="localhost"; // Host name 
$username=""; // Mysql username 
$password=""; // Mysql password 
$db_name="test"; // Database name 
$tbl_name="forum_question"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// get value of id that sent from address bar 
$id=$_GET['id'];
$sql="SELECT * FROM $tbl_name WHERE id='$id'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
?>

<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td><table width="100%" border="0" cellpadding="3" cellspacing="1" bordercolor="1" bgcolor="#FFFFFF">
<tr>
<td bgcolor="#F8F7F1"><strong><? echo $rows['topic']; ?></strong></td>
</tr>

<tr>
<td bgcolor="#F8F7F1"><? echo $rows['detail']; ?></td>
</tr>

<tr>
<td bgcolor="#F8F7F1"><strong>By :</strong> <? echo $rows['name']; ?> <strong>Email : </strong><? echo $rows['email'];?></td>
</tr>

<tr>
<td bgcolor="#F8F7F1"><strong>Date/time : </strong><? echo $rows['datetime']; ?></td>
</tr>
</table></td>
</tr>
</table>
<BR>

<?php

$tbl_name2="forum_answer"; // Switch to table "forum_answer"
$sql2="SELECT * FROM $tbl_name2 WHERE question_id='$id'";
$result2=mysql_query($sql2);
while($rows=mysql_fetch_array($result2)){
?>

<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td><table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td bgcolor="#F8F7F1"><strong>ID</strong></td>
<td bgcolor="#F8F7F1">:</td>
<td bgcolor="#F8F7F1"><? echo $rows['a_id']; ?></td>
</tr>
<tr>
<td width="18%" bgcolor="#F8F7F1"><strong>Name</strong></td>
<td width="5%" bgcolor="#F8F7F1">:</td>
<td width="77%" bgcolor="#F8F7F1"><? echo $rows['a_name']; ?></td>
</tr>
<tr>
<td bgcolor="#F8F7F1"><strong>Email</strong></td>
<td bgcolor="#F8F7F1">:</td>
<td bgcolor="#F8F7F1"><? echo $rows['a_email']; ?></td>
</tr>
<tr>
<td bgcolor="#F8F7F1"><strong>Answer</strong></td>
<td bgcolor="#F8F7F1">:</td>
<td bgcolor="#F8F7F1"><? echo $rows['a_answer']; ?></td>
</tr>
<tr>
<td bgcolor="#F8F7F1"><strong>Date/Time</strong></td>
<td bgcolor="#F8F7F1">:</td>
<td bgcolor="#F8F7F1"><? echo $rows['a_datetime']; ?></td>
</tr>
</table></td>
</tr>
</table><br>

<?php
}

$sql3="SELECT view FROM $tbl_name WHERE id='$id'";
$result3=mysql_query($sql3);
$rows=mysql_fetch_array($result3);
$view=$rows['view'];

// if have no counter value set counter = 1
if(empty($view)){
$view=1;
$sql4="INSERT INTO $tbl_name(view) VALUES('$view') WHERE id='$id'";
$result4=mysql_query($sql4);
}

// count more value
$addview=$view+1;
$sql5="update $tbl_name set view='$addview' WHERE id='$id'";
$result5=mysql_query($sql5);
mysql_close();
?>

<BR>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form name="form1" method="post" action="add_answer.php">
<td>
<table width="100%" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td width="18%"><strong>Name</strong></td>
<td width="3%">:</td>
<td width="79%"><input name="a_name" type="text" id="a_name" size="45"></td>
</tr>
<tr>
<td><strong>Email</strong></td>
<td>:</td>
<td><input name="a_email" type="text" id="a_email" size="45"></td>
</tr>
<tr>
<td valign="top"><strong>Answer</strong></td>
<td valign="top">:</td>
<td><textarea name="a_answer" cols="45" rows="3" id="a_answer"></textarea></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input name="id" type="hidden" value="<? echo $id; ?>"></td>
<td><input type="submit" name="Submit" value="Submit"> <input type="reset" name="Submit2" value="Reset"></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
代码查看器

这是您在 PDO 中的代码,如果有帮助的话……使用准备好的语句的好习惯。让我知道它是否有效!您可能需要调整数据库信息。

<?php

$con = new PDO('mysql:host=localhost;dbname=databasename', 'username', 'password');
$stmt = $con->query("SELECT * FROM forum_question ORDER BY id DESC");

echo'
<table width="90%" border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#CCCCCC">
<tr>
   <td width="6%" align="center" bgcolor="#E6E6E6"><strong>#</strong></td>
   <td width="43%" align="center" bgcolor="#E6E6E6"><strong>Topic</strong></td>
   <td width="15%" align="center" bgcolor="#E6E6E6"><strong>Views</strong></td>
   <td width="13%" align="center" bgcolor="#E6E6E6"><strong>Replies</strong></td>
   <td width="13%" align="center" bgcolor="#E6E6E6"><strong>Date/Time</strong></td>
</tr>
';

while($rows = $stmt->fetch()) {
   echo'
   <tr>
      <td bgcolor="#FFFFFF">'.$rows['id'].'</td>
      <td bgcolor="#FFFFFF"><a href="view_topic.php?id='.$rows['id'].'">'.$rows['topic'].'></a><BR></td>
      <td align="center" bgcolor="#FFFFFF">'.$rows['view'].'</td>
      <td align="center" bgcolor="#FFFFFF">'.$rows['reply'].'</td>
      <td align="center" bgcolor="#FFFFFF">'.$rows['datetime'].'</td>
   </tr>
   ';
}

这是完整的更新版本..

<?php

$con = new PDO('mysql:host=localhost;dbname=databasename', 'username', 'password'); 

// Get value of id that sent from hidden field 
$id=$_POST['id'];

// Find highest answer number.
$stmt = $con->prepare("SELECT MAX(a_id) AS Maxa_id FROM forum_answer WHERE question_id=:id");
$stmt->bindParam(':id', $id);
$stmt->execute();

$rows=$stmt->fetch();

// add + 1 to highest answer number and keep it in variable name "$Max_id". if there no answer yet set it = 1 
if ($rows) {
   $Max_id = $rows['Maxa_id']+1;
}else{
   $Max_id = 1;
}

if(isset($_POST['Submit'])) {

   // get values that sent from form 
   $a_name=$_POST['a_name'];
   $a_email=$_POST['a_email'];
   $a_answer=$_POST['a_answer']; 

   $datetime=date("d/m/y H:i:s"); // create date and time

   // Insert answer 
   $stmt = $con->prepare("INSERT INTO forum_answer (question_id, a_id, a_name, a_email, a_answer, a_datetime) VALUES (:id, :$Max_id, :$a_name, :$a_email, :$a_answer, :$datetime)");
   $stmt->execute();

   echo "Successful<BR>";
   echo "<a href='view_topic.php?id=".$id."'>View your answer</a>";

   // If added new answer, add value +1 in reply column 
   $stmt = $con->prepare("UPDATE forum_question SET reply=:maxid WHERE id=:id");
   $stmt->bindParam(':maxid', $Max_id);
   $stmt->bindParam(':id', $id);
   $stmt->execute();

}

?>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

读取数据库表并输出到Scala中的文件?

来自分类Dev

删除没有表的数据库

来自分类Dev

将javaRDD输出到数据库

来自分类Dev

将javaRDD输出到数据库

来自分类Dev

有没有办法将数据工厂 Web 活动输出保存到文件或数据库表?

来自分类Dev

如何将数据库数据输出到网站?

来自分类Dev

没有主键的数据库表

来自分类Dev

没有特定表的MSSQL数据库备份

来自分类Dev

SQLite数据库错误:没有这样的表

来自分类Dev

如何检测没有列的访问数据库表?

来自分类Dev

数据库错误没有这样的表Django

来自分类Dev

PHPUnit数据库-没有这样的表

来自分类Dev

Android Studio:创建了数据库,但没有表

来自分类Dev

Airflow将Postgres数据库的所有表导出到BigQuery

来自分类Dev

如何将数据库表中的所有记录导出到文件中?

来自分类Dev

没有错误,没有输出,并且没有将数据插入到jsp的数据库中

来自分类Dev

PHP / innerHTML使用两个while循环导致数据库部分输出到html表之外

来自分类Dev

C#将数据从数据库导出到excel。没有任何DLL或开源dlll或任何类型的免费dll

来自分类Dev

格式化并输出数据库表中的所有数据

来自分类Dev

表中没有可用数据,但显示了数据库中的数据

来自分类Dev

从数据库中删除时,SQL逻辑错误或缺少数据库没有此类表

来自分类Dev

如何在Django中创建数据库视图排序(没有任何数据库表的派生模型)

来自分类Dev

在没有输入或输出的datastage中运行数据库查询

来自分类Dev

在没有输入或输出的datastage中运行数据库查询

来自分类Dev

为什么访问数据库时控制台没有输出?

来自分类Dev

我的视图考勤表没有从数据库中提取表

来自分类Dev

MySQL / PHP检查数据是否在数据库表中,如果没有插入

来自分类Dev

大表数据库中没有数据关系?

来自分类Dev

MVC5 Ajax调用成功更新数据库,但表没有新数据

Related 相关文章

  1. 1

    读取数据库表并输出到Scala中的文件?

  2. 2

    删除没有表的数据库

  3. 3

    将javaRDD输出到数据库

  4. 4

    将javaRDD输出到数据库

  5. 5

    有没有办法将数据工厂 Web 活动输出保存到文件或数据库表?

  6. 6

    如何将数据库数据输出到网站?

  7. 7

    没有主键的数据库表

  8. 8

    没有特定表的MSSQL数据库备份

  9. 9

    SQLite数据库错误:没有这样的表

  10. 10

    如何检测没有列的访问数据库表?

  11. 11

    数据库错误没有这样的表Django

  12. 12

    PHPUnit数据库-没有这样的表

  13. 13

    Android Studio:创建了数据库,但没有表

  14. 14

    Airflow将Postgres数据库的所有表导出到BigQuery

  15. 15

    如何将数据库表中的所有记录导出到文件中?

  16. 16

    没有错误,没有输出,并且没有将数据插入到jsp的数据库中

  17. 17

    PHP / innerHTML使用两个while循环导致数据库部分输出到html表之外

  18. 18

    C#将数据从数据库导出到excel。没有任何DLL或开源dlll或任何类型的免费dll

  19. 19

    格式化并输出数据库表中的所有数据

  20. 20

    表中没有可用数据,但显示了数据库中的数据

  21. 21

    从数据库中删除时,SQL逻辑错误或缺少数据库没有此类表

  22. 22

    如何在Django中创建数据库视图排序(没有任何数据库表的派生模型)

  23. 23

    在没有输入或输出的datastage中运行数据库查询

  24. 24

    在没有输入或输出的datastage中运行数据库查询

  25. 25

    为什么访问数据库时控制台没有输出?

  26. 26

    我的视图考勤表没有从数据库中提取表

  27. 27

    MySQL / PHP检查数据是否在数据库表中,如果没有插入

  28. 28

    大表数据库中没有数据关系?

  29. 29

    MVC5 Ajax调用成功更新数据库,但表没有新数据

热门标签

归档