2016-09-29 107 views
0

修訂後的問題:MySQL查詢可以包含HTML值嗎?

如何在填寫表單時引用一行MySQL數據。換句話說,用我的('選擇* FROM ...我怎麼能指定行來拉字段而無需處理表單來獲取PHP字段?

期望的過程1)用戶輸入第一個值, 2)邊欄MySQL查詢查找該值和填充DIV與該行的數據,3)用戶繼續填寫表格,同時能夠看到與MySQL數據格申請

原題:

我很好奇,如果您可以在MySQL查詢中包含對HTML輸入的引用。

以下面的示例爲例。

('SELECT * FROM MyTableName WHERE MyColumnID="MyHTMLInputValue"'); 

我想根據輸入字段的值引用行中的所有字段,並不確定如何引用這樣的查詢。

謝謝!

+0

你的意思是一個html輸入元素的值:'? –

+0

定義「HTML值」。我想我知道你想在這裏做什麼,並且我建議你不要把它寫成WHERE MyColumnID =「Hello world」'。 HTML是HTML,MySQL是MySQL。 –

+0

我的意思是隱藏的值。 – Born2Discover

回答

0

這聽起來不是一個好主意。通常你想在你的網站和數據庫之間進行一些分離。你可以接受「MyHTMLInputValue」,處理它,然後你可以完成你的查詢。

var myValue = MyHTMLInputValue; 
//validate input 
('SELECT * FROM MyTableName WHERE MyColumnID="' + myValue + '"') 
+2

爲什麼你會在javascript中生成一個sql查詢?我希望你不是建議從客戶端向服務器發送完整的查詢。 – jeroen

+1

'WHERE MyColumnID =''+ myValue +''''你想讓他們在這裏做數學嗎? –

+0

我還沒有做任何事,我只是一個學生(地球物理學),所以不知道這是否有可能。背後的最終想法是,例如,有人發帖說他們處於某個地質時期,隱藏領域會立即抓住這個價值。然後,我想把這個隱藏的字段值和參考返回到mysql表中所有時間段的細節。 – Born2Discover

1

阿賈克斯是要走的路。

本示例使用jQuery。

首先,我們需要設置一個php腳本來獲得我們的價值並搜索它,然後返回我們的數據。

PHP myPhpScript.php

<?php 
$search_value = $_POST["field1"]; //Get our value from the post. 
//Make sure to do some authentication on the value so that bad values dont get through 
$connection = new mysqli(Stuff here); 
$rows = $connection->query(
"SELECT * FROM someTable where searchColumn LIKE %".$search_value."%" 
); 

//Now all we need to do is send out our data. Lets use json. 
$out = $rows[0];//Get the first row. NOTE: Make sure to remove any columns that you dont want the client to see. 

echo json_encode($out); //Send the client the data. 
?> 

的Javascript Some script on the page.

var textbox = $("#mySearchBox"); //This is the jQuery object for our text box. 
var viewbox = $("#myViewer"); //This is the jQuery object for the div that holds the results 

textbox.on("input", function() { 
$.ajax({ 
    url: "myPhpScript.php", //This is the php script that we made above. 
    method: "POST", //This set our method to POST. 
    data: {field1: textbox.val()}, //set the textbox value to field1 
    dataType: "json", //So jquery formats the json into an object. 
    success: function (phpDataObject) { //Now its up to you to decide what to do with the data. Example below 
    viewbox.html("");//Clear the viewbox. 
    viewbox.append("Id: "+phpDataObject["id"]); //Show the id of row that was found. 
    } 
}); 
}); 

此代碼可能無法正常工作。只需修復出現的任何語法錯誤。

希望這會有所幫助。

評論是否需要任何幫助。

+0

我想我需要做更多的閱讀AJAX和JQuery語法,因爲我無法讓它工作。儘管謝謝你的幫助。 – Born2Discover

+0

我將發佈一個工作示例。 –