2013-02-15 34 views
0

我使用的是JQuery移動版,並且在加載外部文件方面存在問題 - 總是顯示「錯誤加載頁面」消息。所以我不能在提交表單後使用PHP中的標題位置重定向到頁面。如何在不通過標題位置重定向的情況下以PHP顯示發送的消息?

一旦按下提交按鈕,您將如何顯示發送的消息?

這是HTML:

<form method="post" id="update_beer" action="php/input_pint.php"> 
     <p><label for="name">Your name</label><input type="text" size="30" name="name" id="name" /></p> 
     <p><label for="price">Price of a pint</label><input type="number" name="price" id="price" cols="5" /></p> 
     <p><input type="submit" value="Update" name="commit" id="message_submit"/> or 
     <a class="close" href="/">Cancel</a></p> 
</form> 

這是將所有輸入到我的數據庫的PHP:

<?php 
//input price_pint.php 
$con = mysql_connect("hostname", "databasename", "password"); 
if (!$con) { 
die("Could not connect." . mysql_error()); 
} 
mysql_select_db("databasename", $con); 

$sql="INSERT INTO price_pints (name, price) 
VALUES 
('$_POST[name]','$_POST[price]')"; 

if (!mysql_query($sql,$con)) 
{ 
die('Error: ' . mysql_error()); 
} 

mysql_close($con); 
?> 

我只是不知道如何與回聲消息,我形成。

+0

爲什麼不「警惕」?或msgbox? – Vogel612 2013-02-15 13:29:27

+0

我錯過了這裏的東西,或者你是在解決這個問題的ajax解決方案? – 2013-02-15 13:33:00

+0

使用ajax來不刷新解決方案 – Guerra 2013-02-15 13:33:37

回答

3

您可以使用Ajax,你也需要SQL轉義你的投入,否則像Foster'sSam Smith's ECT是要打破你的查詢飲品。

<script> 
$("#update_beer").submit(function(e){ 
    $.ajax({ 
     type: "POST", 
     url: "php/input_pint.php", 
     data: $("#update_beer").serialize(), 
     success: function(data){ 
      if(data=='true'){ 
       alert('Beer Added'); 
      } 
     } 
    }); 
    e.preventDefault(); 
}); 
</script> 

而且繼承人連接並插入到你的數據庫,使用PDO的一個更好的辦法:

<?php 
try { 
    $db = new PDO("mysql:host=127.0.0.1;dbname=databasename", 'dbuser', 'dbpassword'); 
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
    $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 
}catch (Exception $e){ 
    die('Cannot connect to mySQL server.'); 
} 

if($_SERVER['REQUEST_METHOD']=='POST'){ 
    if(!empty($_POST['name']) && !empty($_POST['price'])){ 
     $sql = 'INSERT into price_pints (`name`,`price`) VALUES (:name,:price)'; 
     $query = $db->prepare($sql); 
     $query->bindParam(':name', $_POST['name'], PDO::PARAM_STR); 
     $query->bindParam(':price', $_POST['price'], PDO::PARAM_STR); 
     $query->execute(); 
     die('true'); 
    } 
} 
die('false'); 
?> 
1

創建一個將其插入到數據庫,並返回一個標誌喜歡 - 真正的成功是否真假的功能如果有事情發生,那麼根據國旗迴應你的消息。

相關問題