2016-09-29 111 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

我将发布一个工作示例。 –