簡體   English   中英

jQuery AJAX POST允許在不進行頁面重定向的情況下發送表單數據-然后如何將數據插入mysql

[英]jQuery AJAX POST to allow form data sending without page redirect- how to then insert data into mysql

我遵循了三篇教程,一本關於將表單數據提交到php文件,一本關於將數據寫入mysql表,然后一本關於jQuery AJAX來完成所有這些操作而無需頁面重定向。

順便說一下,jQuery AJAX教程就在這里,因為似乎該站點上的很多人都在問如何在沒有POST重定向的情況下發送表單:

張貼沒有頁面重定向的表單

關於通過AJAX將數據獲取到php文件方面,我已經正確設置了所有內容,但是php mysql語句不會將數據寫入數據庫。 我已經使用firebug來檢查數據是否到達了php,這就是我的想法。

我確定問題不是數據庫連接性之一,我認為這是由於數據格式傳遞給php文件。 對我來說,混合和匹配這些教程很困難。 我是否需要解壓縮在jQuery函數中創建的字符串數據?

順便說一句,他在jQuery AJAX教程中提到“除了發送電子郵件和發送成功消息外,您還可以在這里做更多高級的事情。 例如,您可以將值發送到數據庫,進行處理,然后將結果顯示回給用戶。 聽起來他在說您可以使用除POST之外的其他方法來執行php文件。 我以為php文件的全部目的是進行數據庫存儲?

感謝您的時間。

jQuery AJAX發送數據:

  jQuery(function() {  
  jQuery(".button1").click(function() {  

    var txtRow1 = jQuery('#txtRow1').val();
    var tickerRow1 = jQuery('#tickerRow1').val();

    var dataString = 'txtRow1='+ txtRow1 + '&tickerRow1=' + tickerRow1;  
    //alert (dataString);return false;  
    jQuery.ajax({  
    type: "POST",  
    url: "form_action.php",  
    data: dataString
    });  
            return false;  
        });  
});  

和form_action.php:

<?php

$dbhost = 'localhost';
$dbuser = 'user';
$dbpass = 'pass';
$dbname = 'dbname';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
mysql_select_db($dbname);

$txtRow1 = $_POST['txtRow1'];
$tickerRow1 = $_POST['tickerRow1'];

$sqlinsert = "INSERT INTO stock_port (name, ticker) VALUES ('$txtRow1', '$tickerRow1')"; 

?>

首先,確保從發布中轉出數據:

$sqlinsert = "INSERT INTO stock_port (name, ticker) VALUES ('".mysql_real_escape_string($txtRow1)."', '".mysql_real_escape_string($tickerRow1)."')";

第二件事,您沒有執行查詢(或者這里缺少一些代碼?)

mysql_query($sqlinsert, $conn);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM