簡體   English   中英

mysql值轉換為html格式

[英]mysql value to html form

在我的網站上,登錄到網站並打開聊天框后,我需要使用用戶名+ PIN身份驗證運行firebase聊天(這是本文中最重要的三個標記:

    <div id='messagesDiv'></div>
    <input type='hidden' id='nameInput' value=''>
    <input type='text' id='messageInput' placeholder='Message'>

)我希望id='nameInput'值成為sql數據庫中的用戶名。 sql結構是

Database:

"xxxx_usr"
User:
"xxxx_usr"
Host:
"Localhost"
Table:
"Users"
Table; 

Users:

------------------------------
id    | username  | password |
1     | Name      | ******   |
2     | Name2     | ******   |
------------------------------

登錄腳本的結尾是

    session_register("myusername");
    session_register("mypassword"); 
    header("location:sucsess.html");

所以有沒有辦法使用這個

    session.register("myusername")

改變

    <input type='hidden' id='nameInput' value=''>

php注冊用戶名的值在前兩頁,我們假設是Name,所以登錄用戶將發送的所有聊天消息都來自Name。

完整的controll.php應該是什么? 現在看起來

經過建議的修改后,它看起來像

<?php

$host="localhost"; // Host name 
$username="*******_usr"; // Mysql username 
$password="*******"; // Mysql password 
$db_name="*******_usr"; // Database name 
$tbl_name="Users"; // Table name 

// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// username and password sent from form 
$myusername=$_POST['username']; 
$mypassword=$_POST['password']; 

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){

// Register $myusername, $mypassword and redirect to file "login_success.
if (!isset ($_SESSION)) session_start();

$_SESSION["myusername"] = $username;
$_SESSION["mypassword"] = $password;
header("Location:sucsess.html");
}
else {
echo "Wrong Username or Password";
}
?>

因為編輯后我可以不登錄而訪問sucsess.html,還是注銷代碼錯誤?

<?php
session_destroy();
?<

還是重定向未授權用戶的代碼?

<?php
session_start();
if(!session_is_registred(myusername)) {
header("Location:index.html")
}
?>

謝謝您的回答

為了使用會話變量,請使用$_SESSION數組而不是已棄用的session_register()

//start session if it has not been started.
if (!isset ($_SESSION)) session_start(); 


$_SESSION["myusername"] = $username; //comes form db
$_SESSION["mypassword"] = $password;  //from db

您可以調用任何會話值

<input type="hidden" id="nameInput" value="<?php echo $_SESSION['myusername'] ?>">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM