简单的用户发布表单,它的所有工作都很好,但希望它生成一个使用数据库中的user_id
的php文件。这样我可以生成该页面的链接以查看单个帖子。我正在使用fopen
来创建也适用的页面。使用数据库中的user_id创建动态php页面作为文件名
我如何让它生成'user_id'.php作为新的文件名?你可以看到它现在命名文件'newfile.php'。
// Create Post
session_start();
if(isset($_POST['createPostBtn'])){
$myusername = $_SESSION['username'];
$postTitle = $_POST['postTitle'];
$postDesc = $_POST['postDesc'];
$id = $row['user_id'];
$myfile = fopen('newfile.php', 'w') or die("can't open file");
$txt = "<?php include('init.inc.php'); ?>";
$txt2 = "<?php include('header.php'); ?>";
fwrite($myfile, $txt);
fwrite($myfile, $txt2);
fwrite($myfile, $myusername);
fwrite($myfile, $id);
fwrite($myfile, $postTitle);
fwrite($myfile, $postDesc);
fclose($myfile);
mysql_query("INSERT INTO `users` (`post_title`, `post_description`, `username`) VALUES ('{$postTitle}', '{$postDesc}', '{$myusername}')");
}
我想你在完全错误的方式打算。不要为每个用户创建一个文件,只需使用'.htaccess'来重写你的url,然后编写一个主用户页面 – Rizier123
Rizier123是正确的。最好的方法是url重写,但如果你真的想要你的解决方案,你可以使用你的$ id而不是newfile.php'code'fopen($ id。'。php','w');'code'来获得最后一个插入ID可以使用'code'mysql_insert_id'code'从你的查询中获得ID,然后写入文件 – JSB
谢谢,每当用户在这里创建一个帖子时,会产生一个新的PHP页面,然后写post数据,然后我可以链接到该页面的帖子标题..我想通过使用自动递增的ID将是生成页面的最佳方式,因为每个页面将有不同的文件名..我期待着做类似于craigslist的东西我猜你在哪里发布信息,并且它给了它(看起来像)发布自己的网页..它不是一个特定的项目即时通讯只是为了更好地学习PHP,所以最好的方法是最好的..再次感谢! –