2013-10-24 36 views
0

好吧,讓我們從這開始,我不想讓任何人做我的項目/作業,我只是尋求幫助完成這個擴展項目。我很新的HTML,PHP,& MYSQL。PHP&MySQL - 爲PHP/HTML中的聯繫人表單創建一個SQL腳本

我們正在擴展一個我們之前做過的項目。在我們使用HTML和PHP創建聯繫表單之前將項目上傳到我們學校的服務器。我將爲您提供該項目所有文件的代碼。

下面是聯繫人形式.html文件(Assignment3.html)代碼:

<html> 
    <head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
    <style type="text/css"> 
    </style> 
</head> 
<body bgcolor="green"> 
<form action="Registered.php" method="post" align="center"> 
</br> 
</br> 

<label> 
    <font size="5"> 
     <strong>Contact Form</strong> 
    </font> 
</label> 
<p>  
    <strong>First Name:</strong> 
     <input type="text" name="fname"> 
</p> 
<p> 
    <strong>Last Name:</strong> 
     <input type="text" name="lname"> 
</p> 
<p> 
    <strong>Address:</strong> 
     <input type="text" name="address"> 
</p> 
<p> 
    <strong>State:</strong> 
     <select name="state"> 
<option value="Al">Al</option> 
<option value="AK">AK</option> 
<option value="AS">AS</option> 
<option value="AR">AR</option> 
<option value="CA">CA</option> 
<option value="CO">CO</option> 
<option value="CT">CT</option> 
<option value="DE">DE</option> 
<option value="DC">DC</option> 
<option value="FL">FL</option> 
<option value="GA">GA</option> 
<option value="HI">HI</option> 
<option value="ID">ID</option> 
<option value="IL">IL</option> 
<option value="IN">IN</option> 
<option value="IA">IA</option> 
<option value="KS">KS</option> 
<option value="KY">KY</option> 
<option value="LA">LA</option> 
<option value="ME">ME</option> 
<option value="MD">MD</option> 
<option value="MA">MA</option> 
<option value="MI">MI</option> 
<option value="MN">MN</option> 
<option value="MS">MS</option> 
<option value="MO">MO</option> 
<option value="MT">MT</option> 
<option value="NE">NE</option> 
<option value="NV">NV</option> 
<option value="NH">NH</option> 
<option value="NJ">NJ</option> 
<option value="NM">NM</option> 
<option value="NY">NY</option> 
<option value="NC">NC</option> 
<option value="ND">ND</option> 
<option value="OH">OH</option> 
<option value="OK">OK</option> 
<option value="OR">OR</option> 
<option value="PA">PA</option> 
<option value="RI">RI</option> 
<option value="SC">SC</option> 
<option value="SD">SD</option> 
<option value="TN">TN</option> 
<option value="UT">UT</option> 
<option value="VT">VT</option> 
<option value="VA">VA</option> 
<option value="WA">WA</option> 
<option value="WV">WV</option> 
<option value="WI">WI</option> 
<option value="WY">WY</option> 
</select> 
</strong></strong></p> 
<strong><strong> 
<p> 
    <strong>Zip Code:</strong> 
     <input type="text" name="zip"> 
</p> 
<p> 
    <strong>Phone Number:<strong> 
     <input type="text" name="phone"> 
</strong></strong></p> 
<strong><strong> 
<p> 
    <strong>Email:<strong> 
     <input type="text" name="email"> 
</strong></strong></p> 
<strong><strong> 
<p> 
    <input type="reset" value="Reset"> 
    <input type="submit" value="Save to database"> 
    <input type="submit" value="Save to file"></p> 
<p> 
<a href="">View contacts in database</a> 
</p> 
<p> 
<a href="http://web-students.armstrong.edu/~tp2283/contactsFile.html">View contacts in file</a> 
</p> 
</strong></strong></strong></strong></strong></strong> 
</form> 
</body> 
</html> 

他* 再是針對PHP文件(Registered.php)的代碼: *

<html>  
    <head> 
     <title> Thank You </title> 
    </head> 
    <body bgcolor = "blue"> 
    <?php 
       #declare variables 
       $fname = $_POST['fname']; 
       $lname = $_POST['lname']; 
       $address = $_POST['address']; 
       $state = $_POST['state']; 
       $zip = $_POST['zip']; 
       $phone = $_POST['phone']; 
       $email = $_POST['email']; 
       $DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT']; 
    ?> 
     <h1 align = "center"> Thanks for Registering! </h1> 
     <p align = "center"> Your information is: </p> 
      <table align = "center"> 
       <tr> 
        <td> First Name: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $fname ?> </td> 
       </tr> 
       <tr> 
        <td> Last Name: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $lname ?> </td> 
       </tr> 
       <tr> 
        <td> Address: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $address ?> </td> 
       </tr> 
       <tr> 
        <td> State: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $state ?> </td> 
       </tr> 
       <tr> 
        <td> Zip: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $zip ?> </td> 
       </tr> 
       <tr> 
        <td> Telephone: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $phone ?> </td> 
       </tr> 
       <tr> 
        <td> E-mail: </td> 
        <td> &nbsp </td> 
        <td> <?php echo $email ?> </td> 
       </tr> 
      </table> 

<?php 
      if($_POST['saveToFile'] == 'Save to File') { 
     $outputstring = 
     "First Name: $fname 
     Last Name: $lname 
     Address: $address 
     State: $state 
     Zip: $zip 
     Telephone: $phone 
     Email: $email 
     -----------------------\n"; 

     $fp = fopen("$DOCUMENT_ROOT/../home/students/tp2283/public_html/FormData.txt", 'a'); 
     flock($fp, LOCK_EX); 

     fwrite($fp, $outputstring, strlen($outputstring)); 
     flock($fp, LOCK_UN); 
     fclose($fp); 
    } 
?> 
     <p align="center"><a href="Assignment3.html"> Return to Main Page </a> </p> 
    </body> 
</html> 

首先,我會說,形式應該保存到所有聯繫人的文本文件。我無法弄清楚如何做到這一點。我也有一個單獨的.html文件(contactsFile.html),它寫出了聯繫人。有沒有辦法將新添加的聯繫人保存到.html文件或至少另一個包含.html文件的文本文件?

這裏是contactsFile.html代碼:

<html> 
    <head><meta http-equiv = "Content-Type" content="text/html; charset=ISO-8859-1"> 
     <style><type="text/css"></style> 
    </head> 
<body bgcolor = "red"><center> 
<p> 
    <font size="7"> 
     <strong>Contacts:</strong> 
    </font> 
</p> 
<p>First name: Don</p> 
<p>Last name: Juan</p> 
<p>Address: 120 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1111</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Jim</p> 
<p>Last name: Piper</p> 
<p>Address: 121 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1112</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Sarah</p> 
<p>Last name: Arnold</p> 
<p>Address: 122 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1113</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Bethany</p> 
<p>Last name: Hattaway</p> 
<p>Address: 123 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1114</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Jermaine</p> 
<p>Last name: Siler</p> 
<p>Address: 124 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1115</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Michael</p> 
<p>Last name: Crosby</p> 
<p>Address: 125 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1116</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Jayme</p> 
<p>Last name: Collins</p> 
<p>Address: 126 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1117</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Mitchell</p> 
<p>Last name: Hudson</p> 
<p>Address: 127 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1118</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Roz</p> 
<p>Last name: Wilson</p> 
<p>Address: 128 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1119</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Laura</p> 
<p>Last name: Spangenburg</p> 
<p>Address: 129 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1120</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Morris</p> 
<p>Last name: Alfred</p> 
<p>Address: 130 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1121</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Peggy</p> 
<p>Last name: Williams</p> 
<p>Address: 131 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1122</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Tyler</p> 
<p>Last name: Daniel</p> 
<p>Address: 132 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1123</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Sean</p> 
<p>Last name: Michaels</p> 
<p>Address: 133 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1124</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Jim</p> 
<p>Last name: Heart</p> 
<p>Address: 134 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1251</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Paul</p> 
<p>Last name: Bernard</p> 
<p>Address: 135 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1126</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Jessica</p> 
<p>Last name: Simpson</p> 
<p>Address: 121 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1142</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Darren</p> 
<p>Last name:Lockheart</p> 
<p>Address: 142 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1162</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Michael</p> 
<p>Last name: Scott</p> 
<p>Address: 1121 Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-1133</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 
<p>First name: Donald</p> 
<p>Last name: Duck</p> 
<p>Address: QUACK Street</p> 
<p>State: GA</p> 
<p>Zip: 31419</p> 
<p>Telephone: 478-555-5555</p> 
<p>Email: [email protected]</p> 
<p>_____________________________________________</p> 

</center> 
<p align="center"><a href="Assignment3.html"> Return to Main Page </a> </p> 
</body></html> 

爲了延長我們應該使用相同的應用程序分配,但這次我們要創建一個MySQL數據庫來存儲來自信息形式。

這是我沒有經驗的東西...我沒關係用HTML和一些PHP,但不知道如何轉換到MySQL或去那裏?如果有人能指出我正確的方向!

這是我的表單的圖像......除了「保存到數據庫」和「在數據庫中查看聯繫人」,以及將新聯繫人保存到文件之外, http://i44.tinypic.com/2dqmv7q.jpg 所以如果有人可以給我一些輸入!

接下來,我們應該編寫一個您運行的SQL腳本&爲具有至少100個聯繫人的應用程序生成並填充適當的表。請爲您的數據庫中的每個表格(或多個表格)提供一個簡要說明...

完成這一切後,您將瞭解它爲Web應用程序所採取的安全措施。

感謝您提前幫忙!讓我知道你是否可以使用更多信息。期待您的迴音

+0

如果您不想/無法訪問真正的數據庫服務器,那麼至少應考慮使用適當的數據存儲系統,例如, csv格式化或xml等等......將'data'存儲爲.html頁面不是一個好主意,因爲那樣你每次想要處理數據時都必須讀取/去掉html。將數據存儲爲正確的數據存儲格式,然後根據需要生成您的html列表。 –

回答

0

對於我們目前的學校系統,我總是有一些我不喜歡的東西。我通過搜索學習了編程 - '不要試試,直到你做它。我從來沒有人問過。這讓我非常善於通過自己和互聯網的力量找出並找出問題,以及如何做一些我不知道該怎麼做的事情。所以我建議你自己開始一個項目,幾乎不可能和大目標。然後確保你做到了。並且不要花太多時間去問別人,通過搜索谷歌和測試代碼找出答案,併爲特定的想要做的事情采取許多小型的基於網絡的教程,然後將它們結合起來這個驚人的項目。

簡單搜索「MySQL」給了我這個:http://www.w3schools.com/php/php_mysql_intro.asp這可以作爲一個介紹。

但是..

如果你已經設置了MySQL數據庫(或者登錄信息),創建一個名爲「筆記」與名爲「文本」列的表,然後看看這個例子:

<?php 
header('Content-Type: text/html; charset=utf-8'); 

$dbhost  = "xxx"; 
$dbuser  = "yyy"; 
$dbpass  = "zzz"; 
$dbname  = "xyz"; 

$connect = mysql_connect($dbhost, $dbuser, $dbpass); 
mysql_select_db($dbname, $connect); 

function esc($str) { 
    $str = strip_tags(stripslashes($str)); 
    return mysql_real_escape_string($str); 
} 

// Always use _get instead of $_GET or $_POST for safety reason 
function _get($str) { 
    if (!isset($_REQUEST[$str])) return null; 

    if (is_array($_REQUEST[$str])) 
     return array_map_r('esc', $_REQUEST[$str]); 
    return esc($_REQUEST[$str]); 
} 

?> 

<!DOCTYPE html> 
<html> 
<head> 
    <title> Hello! </title> 
</head> 
<body> 


<form method="post" action="."> 
<textarea id="note" placeholder="Your note..." name="text"></textarea> 
<input type="submit" value="Post it"/> 

<div> 
<?php 

$text = _get("text"); 
if (isset($text)) { 
    // Save text 
    mysql_query("INSERT INTO notes (text) VALUES ('$text')"); 
} 


// Fetch saved texts 
$sql_ret = mysql_query("SELECT * FROM notes ORDER BY id DESC"); 
if (mysql_num_rows($sql_ret)<1) { 
    // Error 
} else { 
    while($note = mysql_fetch_array($sql_ret)) { 
     $text = $note['text']; 
     echo "<span>".$text."</span>"; 
    } 
} 


?> 
</div> 

</form> 


</body> 
</html> 

祝您好運!

+0

我還想指出,這是一個稍微過時的做法(在php自己的網站上搜索並閱讀他們對MySQL和麪向對象的新API的說法......),但我不知道你的服務器和學校服務器往往稍微過時(不更新)太... –

+0

我很困惑,我應該怎麼做的PHP文件和MySQL。 – TPolwort