2013-08-01 111 views
-3

我有一個輸入文本區域,用戶輸入他的名字,我希望他的名字在另一個頁面中顯示。在頁面中顯示用戶名

這是我試過到目前爲止:

形式的HTML:

<html> 
<form method="post" name="input" action="name.php" > 
Name:<br/> 
<input name="user" type="text"/><br/> 
<input type="submit" name="Submit" value="insert" /> 
</form> 

name.php

<?php 
mysql_connect("localhost", "root", "root") or die("Connection Failed"); 
mysql_select_db("user")or die("Connection Failed"); 
session_start(); 
$_SESSION['user'] = $_POST['user']; 
$user = $_POST['user']; 
$query = "INSERT INTO test(user)VALUES('$user')"; 
if(mysql_query($query)){ 
echo "inserted";} 
else{ 
echo "fail";} 
?> 

和網頁,我想的名字是顯示:

<?php 
$connection = mysql_connect('localhost', 'root', 'root'); 
mysql_select_db('user'); 

echo $user; 

mysql_close(); 
?> 

Thanks in前進

+0

所以,你有什麼錯誤..? –

+2

**危險**: 您正在使用[an **過時的**數據庫API](http://stackoverflow.com/q/12859942/19068)並應使用[現代替換](http:// php達網絡/手動/ EN/mysqlinfo.api.choosing.php)。你也**易受[SQL注入攻擊](http://bobby-tables.com/)**,現代的API會使[防禦]更容易(http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php)自己從。 – Quentin

回答

0

在爲$ user打印值爲echo $user;之前,您必須從數據庫中獲取其值SELECT查詢或從SESSION現在您可以在所需頁面上打開數據庫連接打印$user但不從表中獲取數據。 $user在這裏沒有賦值。

+0

我試過在'echo $ user'之前使用'$ user = $ _SESSION ['user'];''。沒有改變。 –

+0

@FelipeGrinsztajn你確定你在分配'$ user = $ _SESSION ['user']'之前開始會話嗎? – Fallen

+0

yeeeey就是這樣,它的工作,謝謝兄弟! –

0

您還沒有完成什麼在最終頁面中填充$user變量。

您需要進行SQL查詢或讀取某些表單數據。

(你還需要抵禦XSS attacks