Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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 从MySQL数据库创建唯一网页_Php_Mysql_Database_Webpage - Fatal编程技术网

Php 从MySQL数据库创建唯一网页

Php 从MySQL数据库创建唯一网页,php,mysql,database,webpage,Php,Mysql,Database,Webpage,我对web开发非常陌生(我对HTML的经验有限)。我正在创建一个辩论网站。目前,每个辩论都存储在MySQL数据库中。当用户将信息提交到数据库时,我希望创建一个新页面,其中包含他们的辩论,以及评论和评分的能力 我面临的问题是,从我迄今为止所做的研究来看,我并没有找到一个解决方案来为每次辩论创建一个新的网页。有人对如何将数据写入一个独特的网页有什么建议吗 谢谢, George有一个脚本可以查看请求的URI(查询字符串是查看foo.php?discome=1→ $\u获取['discussion'])

我对web开发非常陌生(我对HTML的经验有限)。我正在创建一个辩论网站。目前,每个辩论都存储在MySQL数据库中。当用户将信息提交到数据库时,我希望创建一个新页面,其中包含他们的辩论,以及评论和评分的能力

我面临的问题是,从我迄今为止所做的研究来看,我并没有找到一个解决方案来为每次辩论创建一个新的网页。有人对如何将数据写入一个独特的网页有什么建议吗

谢谢,
George

有一个脚本可以查看请求的URI(查询字符串是查看
foo.php?discome=1
→ <代码>$\u获取['discussion'])并使用它来获取唯一标识所需辩论的信息(例如,数据库表中用于主键的列的值)

在数据库中查找该行,并将内容输出到页面


(确保以防止SQL注入的方式将数据发送到数据库,并且在不转义或清除用户输入以防止XSS的情况下,不会将用户输入回显到HTML)。

您需要使用模板引擎,如PHP。对于每个辩论,您都会传递一个不同的查询字符串,例如,对于您可能拥有的辩论id 1

www.example.com/debates?id=1

在php代码中,您可以检查此查询参数的值,并使用它从数据库中提取正确的信息,从而允许您动态创建页面。

假设您使用的是php和MySQL

我将尽可能地保持这一点非常简单,可能需要在一个基本示例中使用这些文件,再加上您希望的解释性SQL表(辩论、注释等)

  • /debatelist.php | Dipslays所有的辩论都有一个创建辩论的形式
  • /debateprocessor.php |您的“一体式”数据操作文件
  • /辩论_detail.php |辩论索引指向的详细页面
创建辩论的表格

<form action='debateprocessor.php' action='POST'>
<input type='hidden' name='action' value='create'/>
<input type='text name='debate_name'/>
/// Other inputs - debate topic, debate author, subject etc? same as above
</form>
注意($action=='foo'){//dosomething;}语句的操作-这将允许您在一个文件中处理所有更新(注释、编辑辩论名称等)。表单中的其他操作值可以是“编辑”、“添加注释”等-您可以使用单独的文件来完成所有这些操作,但这允许您一次完成所有操作。您所要做的就是为每个修改表的操作添加ELSEIF或其他类似于上述的if语句

所以显示你的辩论,你会有一个类似于表格中辩论的主列表,比如说你有

debatelist.php

<?
$getDebates = mysql_query("SELECT * FROM debates";); 
$rowNum = 0;

while($row = mysql_fetch_array($getDebates))
{
    $thisDebate = $row['debate_name'];
    $thisDebateID = $row['debate_id'];;

    echo
    "
        <tr>
        <td>
           <a href='debate_detail.php?debateid=$thisDebateID'>
            $thisDebate
        </a>
        </td>

    </tr>
    ";
    $rowNum++;
}

所以我以原始形式传递不同的查询字符串?或者,我可以从数据库中的ID中获取每次辩论的值吗?如何调用
discusion\u detail.php
页面上的查询?当有人点击
的链接时,您如何获得
$thisDebateID
的值,以便调用
选择*WHERE discussion\u id=$thisDebateID
<?
$getDebates = mysql_query("SELECT * FROM debates";); 
$rowNum = 0;

while($row = mysql_fetch_array($getDebates))
{
    $thisDebate = $row['debate_name'];
    $thisDebateID = $row['debate_id'];;

    echo
    "
        <tr>
        <td>
           <a href='debate_detail.php?debateid=$thisDebateID'>
            $thisDebate
        </a>
        </td>

    </tr>
    ";
    $rowNum++;
}