php - 如何使用 localhost 将数据发送到数据库
问题描述
在此处输入图像描述我创建了一个注册表单。我在mysql中注册了数据库和成员表。
我的 register.php 文件是:
<?php
//verileri gönderebilmek için önce bir veri tabanına bağlanmamız gerekir.
include"connect.php"; //connect.php adında bir dosya açtık(veri tabanı kısmında kullanıcaz)
//html deki register formdan gelen verileri register.php ye almış oluyoruz..
$name = $_POST["firstname"]; //veriler POST ile gönderilir.
$sname = $_POST["surname"];
$male = $_POST["male"];
$fename = $_POST["female"];
$email = $_POST["eMail"];
$number = $_POST["phonenum"];
$password = $_POST["pword"];
//veritabanı tablosunda eşitliyoruz ex: member_name eşitse member_name e gibi.
$register=$db->prepare("INSERT INTO register SET
member_name=:member_name,
member_surname=:member_surname,
member_male=:member_male,
member_female=:member_female,
member_mail=:member_mail,
member_number=:member_number,
member_password=:member_password
");
//atama işlemini gerçekleştiriyoruz ex: member_name e POST tan gelen firstname i atıyoruz..
$insert=$register->execute(array(
'member_name' => $_POST['firstname'],
'member_surname' => $_POST['surname'],
'member_male' => $_POST['male'],
'member_female' => $_POST['female'],
'member_mail' => $_POST['eMail'],
'member_number' => $_POST['phonenum'],
'member_password' => $_POST['pword']
));
//insert işleminin başarılı olup olmadığını kontrol ediyoruz
//inser işlemi başarılı olursa buraya yönlendir
if($insert){
Header("Location:index.php?durum=ok");
}
//insert işlemi başarısız olursa buraya yönlendir
else{
Header("Location:xml_get_current_byte_index(parser).php?durum=no");
}
?>
当我想使用 localhost ----> (!) 在表单上注册成员时出现此错误:致命错误:未捕获的 PDOException: SQLSTATE[HY000] [1049] Unknown database 'register' in C:\wamp64\www\register \connect.php 在第 7 行
( ! ) PDOException: SQLSTATE[HY000] [1049] Unknown database 'register' in C:\wamp64\www\register\connect.php 第 7 行
我的 connect.php 文件是:
<?php
//mysql de oluşturduğumuz veri tabanına erişim sağlamak için bunu kullanıyoruz
try {
//mysql:host=localhost(local hostta çalıştığımız için)
//dbname=member (oluşturduğum veritabanının ismi member)
//phpmyadmin için root(kullanıcı adı) ''(şifresiz girdiğimiz için boş)
$db = new PDO("mysql:host=localhost;dbname=register;charset=utf8",'root','');
}
catch (PDOExpception $e){
echo $e->getMessage();
}
?>
解决方案
PDOException: SQLSTATE[HY000] [1049] Unknown database 'register' 清楚地表明您的 MySql 找不到您在连接字符串中指定的数据库名称。
您很有可能在其他数据库主机而不是本地主机上“注册”数据库。您可能想检查您的系统上是否存在其他数据库,例如 XAMPP 或 MAMP 等。
为了进一步支持您的主张,如果“注册”存在并且您认为您的连接字符串是正确的,请分享来自 wamp 的任何一个 phpmyadmin 的屏幕截图,数据库名称为“注册”,然后我们将能够提供进一步的帮助。
推荐阅读
- python - 用不等式 astropy 混合建模约束参数
- android-studio - Android Studio 多平台项目的 commonMain 中的 ktor 依赖项在 IDE 中未解决,但代码运行
- flutter - 我正在寻找类似颤动的导航栏,如果你知道,请指导我
- python-venv - 使用整个 venv 复制文件夹后的 pip 列表
- html - 未显示所选选项(角度,html)
- python - 带有 pytz 的 Pandas 时间戳
- arrays - 如何增加 Array Swift 中的单个元素
- symfony - Symfony 4.4 MoneyType 和 Safari 浏览器
- wordpress - JavaScript 无法在 WordPress 中按 ID 选择 DOM 元素
- java - 如何使用 javax 邮件从电子邮件内容中获取“HREF”链接?