为 mysql 和 php 在线相册创建相册
Creating album for mysql and php online photo album
我正在创建一个 mysql 支持的在线相册并使用 php 访问我的 mysql 数据库,我在尝试创建一个允许用户创建新的表单时遇到了问题专辑,到目前为止我有以下代码:
<h1>My Photo Collection</h1>
<h3>Add, search and browse through our collection!</h3>
<section id="collection">
<h4>Create Album</h4>
<form method='post'>
<?php
require_once 'config.php';
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if(isset($_POST['title'])){
$name = $_POST['title'];
if(empty($name)){
echo "Please enter album name <br/>";
} else{
$mysqli->query("INSERT INTO albums VALUES('', '$title')");
echo "Album was successfully created <br/>";
}
}
?>
Album Name: <input type="text" name="title" /> <input type="submit" value="create" />
</form>
</section>
我的“相册”table 架构是:
标题,date_created,date_modified(时间戳),albumID(主键)
更多问题:
我如何允许用户在没有表格的情况下输入日期(并确保它的格式正确),date_modified 时间戳如何工作(我需要把它放在表格中吗?)
我在 php 查询中使用 mysqli 而不是 mysql。
到目前为止,我的代码 returns "undefined object 'title'"
谁能帮我弄清楚我的代码做错了什么?
谢谢!
目前,$title
未定义,您已将 $_POST['title']
分配给 $name
。并且由于您使用的是 MySQLi API,请改用准备好的语句。
至于日期,就用NOW()
<?php
require_once 'config.php';
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if(isset($_POST['submit'])) {
if(empty($_POST['title'])) {
echo 'Please enter album name <br/>';
} else {
$name = $_POST['title'];
$insert = $mysqli->prepare('INSERT INTO albums (title, date_created, date_modified) VALUES(?, NOW(), NOW())') or die($mysqli->error);
$insert->bind_param('s', $name);
if($insert->execute()) {
echo 'Album was successfully created <br/>';
} else {
echo $mysqli->error;
}
}
}
?>
<h1>My Photo Collection</h1>
<h3>Add, search and browse through our collection!</h3>
<section id="collection">
<h4>Create Album</h4>
<form method='post'>
Album Name: <input type="text" name="title" />
<input type="submit" name="submit" value="create" />
</form>
</section>
我正在创建一个 mysql 支持的在线相册并使用 php 访问我的 mysql 数据库,我在尝试创建一个允许用户创建新的表单时遇到了问题专辑,到目前为止我有以下代码:
<h1>My Photo Collection</h1>
<h3>Add, search and browse through our collection!</h3>
<section id="collection">
<h4>Create Album</h4>
<form method='post'>
<?php
require_once 'config.php';
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if(isset($_POST['title'])){
$name = $_POST['title'];
if(empty($name)){
echo "Please enter album name <br/>";
} else{
$mysqli->query("INSERT INTO albums VALUES('', '$title')");
echo "Album was successfully created <br/>";
}
}
?>
Album Name: <input type="text" name="title" /> <input type="submit" value="create" />
</form>
</section>
我的“相册”table 架构是: 标题,date_created,date_modified(时间戳),albumID(主键)
更多问题: 我如何允许用户在没有表格的情况下输入日期(并确保它的格式正确),date_modified 时间戳如何工作(我需要把它放在表格中吗?)
我在 php 查询中使用 mysqli 而不是 mysql。 到目前为止,我的代码 returns "undefined object 'title'" 谁能帮我弄清楚我的代码做错了什么?
谢谢!
目前,$title
未定义,您已将 $_POST['title']
分配给 $name
。并且由于您使用的是 MySQLi API,请改用准备好的语句。
至于日期,就用NOW()
<?php
require_once 'config.php';
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if(isset($_POST['submit'])) {
if(empty($_POST['title'])) {
echo 'Please enter album name <br/>';
} else {
$name = $_POST['title'];
$insert = $mysqli->prepare('INSERT INTO albums (title, date_created, date_modified) VALUES(?, NOW(), NOW())') or die($mysqli->error);
$insert->bind_param('s', $name);
if($insert->execute()) {
echo 'Album was successfully created <br/>';
} else {
echo $mysqli->error;
}
}
}
?>
<h1>My Photo Collection</h1>
<h3>Add, search and browse through our collection!</h3>
<section id="collection">
<h4>Create Album</h4>
<form method='post'>
Album Name: <input type="text" name="title" />
<input type="submit" name="submit" value="create" />
</form>
</section>