2013-05-18 3 views
-1

Форма, которую я создал, не получает записей.php не обрабатывает результаты mysql

Вот index.html:

<html> 
<body> 
<iframe name = "main_frame" src = "http://stelucir.com/entry_ac.php" style = "position:absolute; width:80%; height:70%; left:10%; top:12%;"> 
</iframe> 
<form name="form1" method="post" action="http://stelucir.com/entry_ac.php" target = "main_frame"> 
<div style = "position:absolute; width:80%; height:5%; left:0%; top:84%;">Image:</div> <input type="text" name="one" id="one" style = "position:absolute; width:80%; height:5%; left:10%; top:83%;"><br> 
<div style = "position:absolute; width:80%; height:5%; left:0%; top:89%;">Part Descr:</div><input type="text" name="two" id="two" style = "position:absolute; width:80%; height:5%; left:10%; top:88%;"><br> 
<div style = "position:absolute; width:80%; height:5%; left:0%; top:94%;">Email:</div> <input type="text" name="three" id="three" style = "position:absolute; width:80%; height:5%; left:10%; top:93%;"> 
<input type="submit" name="Submit" value="Submit" style = "position:absolute; height:5%; left:90%; top:93%;"> 
</form> 
</body> 
</html> 

Вот entry_ac.php:

<?php 

$host="mysql7.namesco.net"; // Host name 
$username="djangofawkes"; // Mysql username 
$password="mypass"; // Mysql password 
$db_name="PH392701_corpses"; // Database name 
$tbl_name="part"; // Table name 

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

// Get values from form 
$one=$_POST['one']; 
$two=$_POST['two']; 
$three=$_POST['three']; 

// Insert data into mysql 
$sql="INSERT INTO $tbl_name(one, two, three)VALUES('$one', '$two', '$three')"; 
$result = mysql_query("SELECT one, two, three FROM part"); 

//loops through results 
echo "<table border='1'>"; 
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { 
    echo "<tr><td>"; 
    echo $row['one']; 
    echo "</td><td>"; 
    echo $row['two']; 
    echo "</td><td>"; 
    echo $row['three']; 
    echo "</td></tr>"; 
} 
echo "</table>"; 
mysql_free_result($result); 
?> 

<?php 
// close connection 
mysql_close(); 
?> 

В PHPMyAdmin на входе MySQL базы данных I:

CREATE TABLE `test_mysql` (
`id` int(4) NOT NULL auto_increment, 
`one` varchar(65) NOT NULL default '', 
`two varchar(65) NOT NULL default '', 
`three` varchar(65) NOT NULL default '', 
PRIMARY KEY (`id`) 
) ENGINE=MyISAM AUTO_INCREMENT=0 ; 

Когда вход в форма не отображает результаты базы данных, проблема заключается в том, что она вообще не входит в базу данных, поскольку l oop, похоже, работает. Однако он заходит в базу данных на localhost и работает частично. На локальном хосте работает и цикл. Помощь Plz.

+0

это вставить данные правильно ??? –

+0

на всякий случай, НЕ ДАЙТЕ информацию о своем db! – rcpayan

ответ

1

Вы не выполняете свой INSERT запроса

$sql="INSERT INTO $tbl_name(one, two, three)VALUES('$one', '$two', '$three')"; 

Просто добавьте после

$mysql = mysql_query($sql) or die(mysql_error()); 

Тогда я хотел бы r сообщите, что функции mysql_ устарели, поэтому я бы посоветовал переключиться на mysqli или PDO, и вам действительно угрожает sql injection, посмотрите здесь How can I prevent SQL injection in PHP?. Вы должны использовать приготовленные Постулаты, чтобы избежать какого-либо риска

0

Обратите внимание, что вы не выдавать (забыла?) Команду INSERT ...

// Insert data into mysql 
$sql="INSERT INTO $tbl_name(one, two, three)VALUES('$one', '$two', '$three')"; 
$result = mysql_query("SELECT one, two, three FROM part"); 
Смежные вопросы