mysqli連接資料庫註冊登錄(mysql 資料庫登錄)

本文目錄一覽:

怎樣使用mysqli連接mysql資料庫

?php

$dbhost =”127.0.0.1″;

$dbuser = “root”;

$dbpwd = “root”;

$dbname = “test”;

$charName = “‘UTF8′”; //設置查詢字符集gbk,gbk2312,utf-8

$mysqli = new  mysqli($dbhost,$dbuser,$dbpwd,$dbname);

if (mysqli_connect_errno()){ //注意mysqli_connect_error()新特性

die(‘Unable to connect!’). mysqli_connect_error();

}

$sql = “SET NAMES “.$charName;

$mysqli-query($sql);

$result=$mysqli-query(“select * from tttt order by id ; //根據前面的計算出開始的記錄和記錄數

while ($row=mysqli_fetch_array($result,MYSQLI_ASSOC)){

$htmlstr.=$row[‘id’].” /br”;

echo   $htmlstr;

PHP寫個一個正常的登錄頁面,用mysqli的方式連接資料庫,HTML也面用from的表單格式

?php

//註冊頁

$username = $_POST[‘username’];

$password = $_POST[‘password’];

$password1 = $_POST[‘password1’];

$email = $_POST[‘mail’];

//判斷用戶名

if(empty($username)){

    exit(‘用戶名不能為空’);

}

//判斷密碼

if(empty($password)){

    exit(‘密碼不能為空’);

}

  if($password == $password1){

    

    }else{

        exit(‘兩次密碼不相等’);

        

    }  

//判斷郵箱格式    

$yx = ‘/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/’;    

if(preg_match($yx,$email)){

        

        

        

    }else{

                

        exit(‘郵箱格式錯誤’);

    } 

//連接資料庫

$link = mysqli_connect(‘localhost’,’root’,”) or die(‘失敗’);

//設置字符集,選擇資料庫表;

mysqli_select_db($link,”test”)or die(‘選擇數據表失敗’);

mysqli_set_charset($link,’utf8′)or die(‘設置字符集失敗’);

//寫入註冊表

$reg = “insert into user(name,password) value(‘$username’,md5(‘$password’))”;

$reg1 = “insert into userdetail(name,emali,nickname) value(‘{$username}’,'{$email}’,'{$username}’)”;

//釋放結果集;

//提交sql語句

$result1 = mysqli_query($link,$reg1);

$result = mysqli_query($link,$reg);

if(mysqli_affected_rows($link)){

    if(mysqli_affected_rows($link) 0){

        mysqli_close($link);

        die(‘用戶添加成功!’);

    }else{

        

        mysqli_close($link);

        die(‘用戶名重複,請修改後重新添加’);

    }

}else{

    

    mysqli_close($link);

    die(‘用戶添加失敗,請重新添加’);

}

//關閉退出

mysqli_close($link) or exit(‘no’);

這是那過程 寫的 ,

無法連接到資料庫,提示:Warning: mysqli_connect(): (HY000/1045): Access denied for user ‘root’@’

原因有二:

1.登錄賬號、密碼、伺服器名稱、資料庫名稱登錄錯誤導致不能連接,這個比較常見,仔細檢查好所填信息是否正確,填寫正確一般就可以解決。

2.如果沒能正確安裝SQL伺服器,也會導致資料庫連接不上;安裝好資料庫後,如果SQL服務管理器沒有啟動,則要去服務那裡開啟。

解決方法:

當正在使用的軟體出現資料庫不能連接時,一般就是伺服器名出現問題,更改伺服器名稱

一般可以解決問題。資料庫如果是安裝在本機,伺服器名可以用「.」或「(local)」來代替 ;如果是安裝在區域網的其它計算機上,可以用IP地址作為伺服器名。

如果是SQL資料庫未能能成功安裝,再次重新安裝時,可能會無法安裝,提示是存在一個未     完成的安裝掛起。解決就方法是:打開註冊表編輯器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到並刪除PendingFileRenameOperations項目即可。

PHP製作一個登錄頁面,用戶名與密碼和資料庫中表裡面的數據相同,最好是用mysqli的方法連接資料庫

form name=”form1″ method=”post” action=”login.php”

  input type=”text” name=”user”

  input type=”password” name=”pass”

  button type=”submit”login/button

/form

//login.php

$u = $_POST[‘user’];

$p = $_POST[‘pass’];

$c = new mysqli(‘localhost’, ‘root’, ‘db_pass’, ‘db_name’);

$c – query(‘set names utf8’);// or gbk

$s = $c – query(“select * from table_name where user = ‘{$u}’ limit 1”);

!$s – num_rows   die(‘user eror’);

$r = $s – fetch_assoc();

$p != $r[‘password’]  die(‘pass error’);

echo ‘login ok’;

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/307203.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-02 18:06
下一篇 2025-01-02 18:06

相關推薦

  • 如何修改mysql的埠號

    本文將介紹如何修改mysql的埠號,方便開發者根據實際需求配置對應埠號。 一、為什麼需要修改mysql埠號 默認情況下,mysql使用的埠號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • Python 常用資料庫有哪些?

    在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝資料庫方案

    本文將介紹在openeuler操作系統中安裝資料庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟體源 sudo…

    編程 2025-04-29
  • Python操作MySQL

    本文將從以下幾個方面對Python操作MySQL進行詳細闡述: 一、連接MySQL資料庫 在使用Python操作MySQL之前,我們需要先連接MySQL資料庫。在Python中,我…

    編程 2025-04-29
  • 資料庫第三範式會有刪除插入異常

    如果沒有正確設計資料庫,第三範式可能導致刪除和插入異常。以下是詳細解釋: 一、什麼是第三範式和範式理論? 範式理論是關係資料庫中的一個規範化過程。第三範式是範式理論中的一種常見形式…

    編程 2025-04-29
  • MySQL遞歸函數的用法

    本文將從多個方面對MySQL遞歸函數的用法做詳細的闡述,包括函數的定義、使用方法、示例及注意事項。 一、遞歸函數的定義 遞歸函數是指在函數內部調用自身的函數。MySQL提供了CRE…

    編程 2025-04-29
  • leveldb和unqlite:兩個高性能的資料庫存儲引擎

    本文將介紹兩款高性能的資料庫存儲引擎:leveldb和unqlite,並從多個方面對它們進行詳細的闡述。 一、leveldb:輕量級的鍵值存儲引擎 1、leveldb概述: lev…

    編程 2025-04-28
  • Python怎麼導入資料庫

    Python是一種高級編程語言。它具有簡單、易讀的語法和廣泛的庫,讓它成為一個靈活和強大的工具。Python的資料庫連接類型可以多種多樣,其中包括MySQL、Oracle、Post…

    編程 2025-04-28
  • MySQL bigint與long的區別

    本文將從數據類型定義、存儲空間、數據範圍、計算效率、應用場景五個方面詳細闡述MySQL bigint與long的區別。 一、數據類型定義 bigint在MySQL中是一種有符號的整…

    編程 2025-04-28
  • MySQL左連接索引不生效問題解決

    在MySQL資料庫中,經常會使用左連接查詢操作,但是左連接查詢中索引不生效的情況也比較常見。本文將從多個方面探討MySQL左連接索引不生效問題,並給出相應的解決方法。 一、索引的作…

    編程 2025-04-28

發表回復

登錄後才能評論