我觉得我越来越接近弄清楚为什么PHP不将数据保存到数据库中.
我尝试从众多教程中学习PHP和MySQL,但都失败了.
所以…我觉得尝试连接到MySQL数据库时可能没有指定某些内容.
在最近的教程中,仅将文本从输入内容输出到MySQL中的表中,我收到一条错误消息,指出未找到服务器“ localhost”.
我的Apache已安装在端口60(不是默认端口80)上.因此,我认为这可能是问题所在.我尝试将localhost:60添加到mysqli_connect而不是localhost本身,并且错误消失了!
但是,仍然存在一个问题:1.加载demo.php页面需要花费很多时间(请参见下面的代码). 2.数据仍未添加.
这是代码(我将视频中的原始MySQL转换为MySQLi并添加了注释):
demo.php:
define('DB_NAME', 'forms1');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_HOST', 'localhost:60');
// stored in a variable to TEST if it's working
$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_HOST);
// TEST if a link has been established (connection)
if (!$link) {
die('Could not connect:' . mysqli_error($link));
}
// same as above
$db_selected = mysqli_select_db($link,DB_NAME);
if(!$db_selected) {
die('Can\t use ' . DB_NAME . ': ' . mysqli_error($link));
}
// Check SUCCESS with commented command below
// echo 'Connected successfully.';
// stored in a variable to shorten
$value = $_POST['input1'];
// stored in a variable to TEST
$sql = "INSERT INTO demo (input1) VALUES ('$value')";
if(!mysqli_query($link, $sql)) {
die('Error: ' . mysqli_error($link));
}
mysqli_close($link);
?>
演示form.php的:
Input 1:
我真的希望有人能在这里为我提供帮助.
可惜我还没有工作的基础…
谢谢!
解决方法:
尝试一下:(您当前的代码对我不起作用)HTML表单和PHP / SQL是一体的.
DEFINE ('DB_USER', 'xxx');
DEFINE ('DB_PASSWORD', 'xxx');
DEFINE ('DB_HOST', 'xxx');
DEFINE ('DB_NAME', 'xxx');
$link = @mysqli_connect (DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)
OR die("could not connect");
if(isset($_POST['submit'])){
// stored in a variable to shorten
$value = mysqli_real_escape_string($link,$_POST['input1']);
// stored in a variable to TEST
$sql = "INSERT INTO demo (input1) VALUES ('$value')";
if(!mysqli_query($link, $sql)) {
die('Error: ' . mysqli_error($link));
}
else { echo "Success"; }
} // if(isset($_POST['submit']))
mysqli_close($link);
?>
Input 1:
标签:php,mysql,database,localhost
来源: https://codeday.me/bug/20191010/1885606.html