繁体   English   中英

自动创建php页面

[英]Automatically create php pages

我有一个关于如何自动创建单个php页面的问题。

我已经创建了一个名为catalog.php的页面。

在catalog.php中,将进行mySQL查询,查询:

$link = mysql_connect("localhost", "root", "");
mysql_select_db("photodb", $link);
$sql = "SELECT id, title, caption, comments, imagelink, year FROM photo";

然后此查询将循环并并排显示在catalog.php上:

<ul class="grid">
<?php while ($row = mysql_fetch_assoc($result)) 
    { ?>
        <li>
            <p class="image"><a href="?"><img src="getImage.php?id=<?php echo $row['id']; ?>" alt="" width="175" height="200" /></a></p>
            <p class="name"><?php echo $row['title']; ?></p>
            <p class="year"><?php echo $row['year']; ?></p>
        </li>
        <?php } // while  
?>
</ul>

其中class =“ grid”将并排排列所有查询的数据,并显示图像,标题和年份。

但是,我需要的一个要求是,每当我单击任何这些图像时,它都应链接到其自己的php页面(individual.php),以显示详细的图像,标题,标题和作者的评论。 详细说明如下:

           Title
IMAGE      Caption

           Author's comments

一个例子:

           Picture of bridge
IMAGE      This image was taken in paris

           Low Shuttle Speed

在上面的图像,标题,标题,作者的评论中,可以在同一张表“ photo”的同一数据库“ photodb”中找到

我的问题如下:

  1. 有没有一种自动创建此类页面的方法? 原因是,如果我手动创建它们,我将很难,因为我的数据库有100多个条目。

  2. 在catalog.php中看到的<a href="">标记中,值应该是什么?

  3. 我已经有一个用于这样的“ individual.php”页面的模板。 他的结构示例如下:

    <body>

    <p class="title">

    London Bridge</p>

    <p class="caption">

    Image taken in summer 2009<br /><br /></p>

    <p class="image">

    <img border="0" class="floatleft" src="imagelink" width="250" height="400" />

    Low Shuttle Speed

    </p>

    </body>

如何更改此结构以适合我的要求?

四。 可以将这样的“ individual.php” URL重命名为具有唯一ID的其他名称吗? 数据库中找到的每个图像都有自己的唯一ID。

五。 我已经在catalog.php中查询了数据库。 我可以以某种方式重用此查询personal.php吗?

如果您想知道,getimage.php如下:

<?php

$id = $_GET['id'];
// do some validation here to ensure id is safe

$link = mysql_connect("localhost", "root", "");
mysql_select_db("photodb", $link);
$sql = "SELECT imagelink FROM photo WHERE id=$id";
$result = mysql_query($sql, $link);
$row = mysql_fetch_assoc($result);
mysql_close($link);

header("Content-type: image/jpeg");
echo file_get_contents($row['imagelink']);

?>

非常感谢您阅读我的问题。

您的最后一个代码段基本上回答了您的问题-您将创建另一个页面,并通过URL( $_GET )将变量传递给该页面。 因此,您的网址可能看起来像“ individual.php?id = 25”,它将拉出ID为“ 25”的图片。 在此示例中, $_GET['id']为'25'。

我还注意到您正在使用“ root”用户进行MySQL连接。 强烈建议您不要这样做。

http://www.1stwebdesigner.com/tutorials/getting-started-php-dynamic-content/

http://www.greensql.com/articles/mysql-security-best-practices

参考@Nathan Loding。 我也会用

mysql_real_escape_string()

显然是为了防止mySQL攻击。 从上面的一些代码来看,我猜您是新的还是“ OLDISH”的Weby复制粘贴程序?

这些功能也将帮助和帮助您学习..非常容易做到这一点.....是的..您可以使用文件功能。

fopen()另请参见附录M,fclose(),fgets(),fread(),fwrite(),fsockopen(),file(),file_exists(),is_visible(),stream_set_timeout(),popen()和stream_context_create ()。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM