2013-05-29 153 views
0

我需要創建一個數據庫,用戶輸入名字和姓氏,然後將其記錄到可按字母順序排序的表中。用戶創建的數據庫或表

我有什麼,我認爲是一個PHP表這裏的氣質:

<?php 
$con=mysqli_connect("mysql6.000webhost.com","owen","*********","student"); 
// Check connection 
if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

// Create table 
$sql = "CREATE TABLE Persons (PID INT NOT NULL AUTO_INCREMENT, PRIMARY KEY(PID), FirstName CHAR(15), LastName CHAR(15))"; 

// Execute query 
if (mysqli_query($con,$sql)) 
    { 
    echo "Table persons created successfully"; 
    } 
else 
    { 
    echo "Error creating table: " . mysqli_error($con); 
    } 
?> 

接下來我有實際的HTML代碼在用戶提交他或她的名字:

<!DOCTYPE HTML> 

<html> 
    <head> 
     <link rel="shortcut icon" href="http://2.bp.blogspot.com/-W6qoXhCjKSs/Tpul-XAR3-I/AAAAAAAACeU/Oe1ZEzpnUCg/s1600/sbstweb.gif"> 
     <link rel="stylesheet" type="text/css" href="../style.css"> 
     <title>Almost Done!</title> 
    </head> 

    <body> 
     <img class= "logo" src= "http://2.bp.blogspot.com/-W6qoXhCjKSs/Tpul-XAR3-I/AAAAAAAACeU/Oe1ZEzpnUCg/s1600/sbstweb.gif"> 
     <h1>Enter your name below to complete the quiz</h1> 
     <form action="insert.php" method="post"> 
      <p><input autofocus name="firstname" placeholder="First Name" type="text"></p> 
      <p><input autofocus name="lastname" placeholder="Last Name" type="text"></p> 
      <input type="submit"> 
     </form> 
    </body> 
</html> 

最後一點我有我認爲是將代碼插入數據庫的php代碼:

<?php 
$con=mysqli_connect("mysql6.000webhost.com","a3159217_owen","*********","a3159217_student"); 
// Check connection 
if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

$sql="INSERT INTO Persons (FirstName, LastName) 
VALUES 
('$_POST[firstname]','$_POST[lastname]')"; 

if (!mysqli_query($con,$sql)) 
    { 
    die('Error: ' . mysqli_error($con)); 
    } 
echo "1 record added"; 

mysqli_close($con); 
?> 

My fi第一個問題是如何讓php代碼實現和工作。當我在網頁上點擊提交時,它會將我指向我製作的insert.php代碼。我如何才能將它提交給數據庫,以及如何首先創建數據庫。

其次,爲了實際顯示錶格,是否必須製作另一個呈現php表格的html頁面?這個怎麼用?

+1

1.把它放在運行php的web服務器上的文件中。你不應該編寫那麼多的代碼而無法運行它。 – 2013-05-29 03:39:09

+0

所以我試過了,它說MySQL訪問被拒絕。它說我使用密碼YES,但我不是,而且在我的代碼中沒有。密碼應該放在MySQL連接提示符的哪個位置? –

回答

0

我不確定這會有幫助與否。 但是對於MYSQL,爲了連接數據庫,代碼如下。

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); 
if (!$link) { 
die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_close($link); 

爲mysqli的,

$mysqli = new mysqli("localhost", "user", "password", "database"); 
if ($mysqli->connect_errno) { 
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error; 
} 
echo $mysqli->host_info . "\n"; 

您可以refered到http://php.net/manual/en/function.mysql-connect.phphttp://php.net/manual/en/mysqli.quickstart.connections.php

+0

我試過了,它連接成功,但它給了我2個錯誤。成功連接 PHP錯誤信息 警告:mysqli_query()預計參數1是mysqli的,在給定的/home/a3159217/public_html/database/insert.php在線資源13 免費的虛擬主機 PHP錯誤信息 警告:mysqli_error()期望參數1爲mysqli,在第15行給出的/home/a3159217/public_html/database/insert.php中的資源 免費虛擬主機 錯誤: –

+0

好吧,你真的不能真正解密,所以這裏是一個screeshot它的:http://i.imgur.com/F3s9s9U.png –

+0

可以嘗試像這樣'$ result = mysqli_query($ con,$ sql)或trigger_error(「Error creating tabl e:「。 mysqli_error($ con));「 – n3ISe