php与数据库的连接用法 (签到一)
注冊頁面
//插入js驗證
<script type="text/javascript">
?? ?window.onload = function(){
?? ??? ?var hid = document.getElementById("id");
?? ??? ?if(hid.value !=""){???????????????????????????????????????????? //當用戶名已存在數據庫時,提示用戶已注冊
?? ??? ??? ?alert("用戶名已注冊");
?? ??? ?}
?? ?}
</script>
//html表單
//隱藏域用來獲取yanzheng.php傳過來的id值,若獲取到則說明該用戶已注冊
<input type="hidden" name="uid" value="<?php echo $_GET["id"] ? $_GET["id"] : ""; ?>" id="id"> ? ??
//創建表單用來提交用戶輸入的數據
?? ?<form action="yanzheng.php" method="post">
//用來存放用戶輸入的信息
?? ??? ?用戶名:<input type="text" name="id"><br>????
?? ??? ?密碼: <input type="password" name="screct"><br>
?? ??? ?確認密碼:<input type="password" name="screct1"><br>
//用來提交表單
?? ??? ?<input type="submit" value="注冊" >
?? ?</form>
//php表單與數據信息驗證
<?php
//設置php編碼
header("Content-type:text/html;charset=utf-8");
//定義變量
$id=$_POST["id"];
$screct=$_POST["screct"];
//連接數據庫
$db = new MySQLi("localhost","root","","z_text");
//驗證數據庫是否連接成功
!mysqli_connect_error() or die("連接失敗");
//設置編碼
$db -> query("set names utf8");
//向數據庫中添加值
$sql="select * from?? ?user where name='$id'";
//執行qul代碼
$ret=$db -> query($sql);
//將結果轉為數組
$att=$ret -> fetch_all();
//判斷注冊信息是否存在
if($att==false){
?? ?//向數據庫中添加注冊信息
?? ?$sql="insert into user(name,password) values('$id','$screct')";
?? ?//執行qul代碼
?? ?$ret =$db-> query($sql);
//判斷是否驗證成功
?? ?if($ret){
//驗證成功則跳轉值簽到首頁
?? ??? ?header("location:shouye.php");
? ? ?}else{
//如果不成功則返回注冊頁面
?? ??? ?header("location:zuce.php");
?? ?}
}else{
//如果注冊信息已存在則,帶id值返回zece.php
?? ?header("location:zuce.php?id=1");
}
?>
?遇到的問題及其分析
1.php網頁編碼問題:
header("Content-type:text/html;charset=utf-8");
2.數據傳輸問題:
header("location:路徑?鍵=值");(以get方式傳值);
3.常見報錯
Notice: Undefined index:沒有找到變量,或者變量是空值
解決思路:根據報錯提示找到位置,然后輸出報錯行逐步排查
4.利用php操作數據時,除了查詢結果其他的結果都是布爾值
5.php傳值接收問題
php穿過來的值可以建立隱藏域用來接受
<input type="hidden" name="uid" value="<?php echo $_GET["id"] ? $_GET["id"] : ""; ?>">
php傳過來的值可以直接用于輸出接收
歡迎你:<?php echo $uid ?>
轉載于:https://www.cnblogs.com/diverman/p/8412538.html
總結
以上是生活随笔為你收集整理的php与数据库的连接用法 (签到一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle linux6 u盘安装,O
- 下一篇: 【VBA】多条件去重