日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
PHP實(shí)現(xiàn)數(shù)據(jù)庫注冊(cè)并上傳用戶頭像(數(shù)據(jù)庫注冊(cè)頭像上傳php)

引言

成都網(wǎng)絡(luò)公司-成都網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)10多年經(jīng)驗(yàn)成就非凡,專業(yè)從事成都網(wǎng)站制作、成都做網(wǎng)站,成都網(wǎng)頁設(shè)計(jì),成都網(wǎng)頁制作,軟文推廣,一元廣告等。10多年來已成功提供全面的成都網(wǎng)站建設(shè)方案,打造行業(yè)特色的成都網(wǎng)站建設(shè)案例,建站熱線:13518219792,我們期待您的來電!

Web應(yīng)用的注冊(cè)功能是開發(fā)中基礎(chǔ)的功能,而對(duì)于大多數(shù)Web應(yīng)用,用戶頭像也是不可或缺的一部分。因此,本文介紹如何使用PHP實(shí)現(xiàn)Web應(yīng)用的注冊(cè)功能,并允許用戶上傳頭像。

之一部分:數(shù)據(jù)庫連接與創(chuàng)建

在使用PHP實(shí)現(xiàn)Web應(yīng)用注冊(cè)功能之前,我們需要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)庫,并且連接到該數(shù)據(jù)庫。我們可以通過以下步驟創(chuàng)建和連接到數(shù)據(jù)庫。

1.創(chuàng)建MySQL數(shù)據(jù)庫

我們需要在MySQL中創(chuàng)建一個(gè)新數(shù)據(jù)庫。我們可以使用以下命令創(chuàng)建一個(gè)名為`userdb`的數(shù)據(jù)庫。

“`

CREATE DATABASE userdb;

“`

2.連接到數(shù)據(jù)庫

一旦我們創(chuàng)建了數(shù)據(jù)庫,我們需要在PHP中連接到該數(shù)據(jù)庫。我們可以使用以下代碼按照自己的需要修改用戶名,密碼、主機(jī)名和數(shù)據(jù)庫名。

“`

//數(shù)據(jù)庫連接信息

$servername = “l(fā)ocalhost”;

$username = “username”;

$password = “password”;

$dbname = “userdb”;

//連接數(shù)據(jù)庫

$conn = new mysqli($servername, $username, $password, $dbname);

//檢測(cè)連接

if ($conn->connect_error) {

die(“連接失敗: ” . $conn->connect_error);

}

?>

“`

第二部分:Web應(yīng)用注冊(cè)功能實(shí)現(xiàn)

1.創(chuàng)建注冊(cè)頁面

我們需要?jiǎng)?chuàng)建一個(gè)注冊(cè)頁面,允許用戶輸入所需信息,例如用戶名、電子郵件和密碼。我們可以使用以下HTML代碼創(chuàng)建一個(gè)基本的表單。

“`

注冊(cè)

用戶名:

電子郵件:

密碼:

“`

2.處理注冊(cè)信息

一旦用戶輸入了所有必要的數(shù)據(jù)并點(diǎn)擊了注冊(cè)按鈕,我們需要以某種方式處理這些信息。我們可以使用以下PHP代碼來處理注冊(cè)信息。

“`

//檢查是否提交表單數(shù)據(jù)

if ($_SERVER[“REQUEST_METHOD”] == “POST”) {

//獲取輸入數(shù)據(jù)

$username = $_POST[“username”];

$eml = $_POST[“eml”];

$password = $_POST[“password”];

//密碼加密

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

//寫入用戶信息到數(shù)據(jù)庫

$sql = “INSERT INTO users (username, eml, password)

VALUES (‘$username’, ‘$eml’, ‘$hashed_password’)”;

if ($conn->query($sql) === TRUE) {

echo “用戶創(chuàng)建成功”;

} else {

echo “錯(cuò)誤: ” . $sql . “
” . $conn->error;

}

}

?>

“`

3.顯示錯(cuò)誤消息

如果用戶輸入的信息有誤,我們需要顯示錯(cuò)誤消息。我們可以使用以下PHP代碼一旦出現(xiàn)錯(cuò)誤即返回到之前的注冊(cè)頁面并顯示錯(cuò)誤信息。

“`

//檢查是否提交表單數(shù)據(jù)

if ($_SERVER[“REQUEST_METHOD”] == “POST”) {

//獲取輸入數(shù)據(jù)

$username = $_POST[“username”];

$eml = $_POST[“eml”];

$password = $_POST[“password”];

//密碼加密

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

//寫入用戶信息到數(shù)據(jù)庫

$sql = “INSERT INTO users (username, eml, password)

VALUES (‘$username’, ‘$eml’, ‘$hashed_password’)”;

if ($conn->query($sql) === TRUE) {

echo “用戶創(chuàng)建成功”;

} else {

echo “錯(cuò)誤: ” . $sql . “
” . $conn->error;

}

}

?>

if(isset($errors) && (count($errors) > 0)){

echo “

“;

foreach ($errors as $error){

echo $error.”
“;

}

echo “

“;

}

?>

“`

4.上傳用戶頭像

我們可以使用以下PHP代碼來上傳用戶頭像,該代碼將用戶頭像存儲(chǔ)在服務(wù)器上。

“`

//上傳頭像

$target_dir = “uploads/”;

$target_file = $target_dir . basename($_FILES[“avatar”][“name”]);

$uploadOk = 1;

$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

// Check if image file is a actual image or fake image

if(isset($_POST[“submit”])) {

$check = getimagesize($_FILES[“avatar”][“tmp_name”]);

if($check !== false) {

echo “File is an image – ” . $check[“mime”] . “.”;

$uploadOk = 1;

} else {

echo “File is not an image.”;

$uploadOk = 0;

}

}

// Check if file already exists

if (file_exists($target_file)) {

echo “Sorry, file already exists.”;

$uploadOk = 0;

}

// Check file size

if ($_FILES[“avatar”][“size”] > 500000) {

echo “Sorry, your file is too large.”;

$uploadOk = 0;

}

// Allow certn file formats

if($imageFileType != “jpg” && $imageFileType != “png” && $imageFileType != “jpeg”

&& $imageFileType != “gif” ) {

echo “Sorry, only JPG, JPEG, PNG & GIF files are allowed.”;

$uploadOk = 0;

}

// Check if $uploadOk is set to 0 by an error

if ($uploadOk == 0) {

echo “Sorry, your file was not uploaded.”;

// if everything is ok, try to upload file

} else {

if (move_uploaded_file($_FILES[“avatar”][“tmp_name”], $target_file)) {

echo “The file “. basename( $_FILES[“avatar”][“name”]). ” has been uploaded.”;

} else {

echo “Sorry, there was an error uploading your file.”;

}

}

?>

“`

第三部分:Web應(yīng)用注冊(cè)功能測(cè)試

1.測(cè)試數(shù)據(jù)庫連接

我們可以使用以下PHP代碼測(cè)試是否連接到了數(shù)據(jù)庫。

“`

//數(shù)據(jù)庫連接信息

$servername = “l(fā)ocalhost”;

$username = “username”;

$password = “password”;

$dbname = “userdb”;

//連接數(shù)據(jù)庫

$conn = new mysqli($servername, $username, $password, $dbname);

//檢測(cè)連接

if ($conn->connect_error) {

die(“連接失敗: ” . $conn->connect_error);

}

echo “連接成功”;

?>

“`

2.測(cè)試注冊(cè)頁面

在瀏覽器中訪問注冊(cè)頁面并輸入所需的信息,點(diǎn)擊注冊(cè)按鈕。如果用戶信息有效且成功寫入數(shù)據(jù)庫,應(yīng)該會(huì)顯示“用戶創(chuàng)建成功”。

3.測(cè)試上傳用戶頭像

我們可以在注冊(cè)頁面中添加文件選項(xiàng)來上傳用戶頭像。在輸入所有必要的信息并選擇一張圖片后,點(diǎn)擊注冊(cè)按鈕。如果上傳成功,您應(yīng)該會(huì)收到一條消息表示“文件已上傳”。

結(jié)論

在本文中,我們介紹了如何使用PHP實(shí)現(xiàn)Web應(yīng)用的注冊(cè)功能,并允許用戶上傳頭像。我們了解了一些創(chuàng)建數(shù)據(jù)庫、寫入數(shù)據(jù)和上傳文件的基本命令。當(dāng)然,根據(jù)需求,我們也可以對(duì)其進(jìn)行更改和擴(kuò)展。

相關(guān)問題拓展閱讀:

  • 怎樣用php實(shí)現(xiàn)上傳圖片到數(shù)據(jù)庫

怎樣用php實(shí)現(xiàn)上傳圖片到數(shù)據(jù)庫

其實(shí)很簡(jiǎn)盯瞎單的,三個(gè)步驟,我找了一個(gè)資料給你,很詳細(xì)埋笑,你看彎則含下應(yīng)該可以明白!

php實(shí)現(xiàn)上傳圖片保存到數(shù)據(jù)庫的方法。具體分析如下:

php 上傳圖片,一般都使用move_uploaded_file方法保存在服務(wù)器上。但如果一個(gè)網(wǎng)站有多臺(tái)服務(wù)器,就需要把圖片發(fā)布到所有的服務(wù)器上才能正常使用(使用圖片服務(wù)器的除外)

如果把圖片數(shù)據(jù)保存到數(shù)據(jù)庫中,多臺(tái)服務(wù)器間可以實(shí)現(xiàn)文件共享,節(jié)省空間。

首先圖片文件是二進(jìn)制數(shù)據(jù),所以需要把二進(jìn)制數(shù)據(jù)保存在mysql數(shù)據(jù)庫。

mysql數(shù)據(jù)庫提供了BLOB類兄明型用于存儲(chǔ)大量數(shù)據(jù),BLOB是一個(gè)二進(jìn)制對(duì)象,能容納不同大小的數(shù)據(jù)。

BLOB類型有以下四種,除存儲(chǔ)的更大信息量不同外,其他都是一樣的??筛鶕?jù)需要使用不同的類型。

TinyBlob更大 255B

Blob更大 65K

MediumBlob  更大 16M

LongBlob      更大 4G

數(shù)據(jù)表photo,用于保存圖片數(shù)據(jù),結(jié)構(gòu)如羨緩告下:

CREATE TABLE `photo` (  

  `id` int(10) unsigned NOT NULL auto_increment,  

  `type` varchar(100) NOT NULL,  

  `binarydata` mediumblob NOT NULL,  

  PRIMARY KEY  (`id`)  

) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

upload_image_todb.php代碼如下:

  

  

  

   

    

   upload image to db demo   

   

  

   

    

  圖片:

  

  

  

    

  

網(wǎng)站建設(shè)公司,網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),1500元定制網(wǎng)站優(yōu)化全包,先排名后付費(fèi),已為上千家服務(wù),聯(lián)系電話:13518219792


當(dāng)前名稱:PHP實(shí)現(xiàn)數(shù)據(jù)庫注冊(cè)并上傳用戶頭像(數(shù)據(jù)庫注冊(cè)頭像上傳php)
URL標(biāo)題:http://www.dlmjj.cn/article/cocichi.html