首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL查询可以包含HTML值吗?

问MySQL查询可以包含HTML值吗?
EN

Stack Overflow用户
提问于 2016-09-30 03:27:16
回答 2查看 378关注 0票数 0

修改后的问题:

如何在填写表单时引用一行MySQL数据。换句话说,使用my ('Select * FROM... ),我如何指定要从中提取字段的行,而不必处理表单以获取PHP字段?

所需过程1)用户输入第一个值,2)边栏MySQL查询查找该值并用来自该行数据填充div,3)用户继续填写表单,同时能够看到具有MySQL数据的div文件

原问题:

我很好奇您是否可以在MySQL查询中包含对HTML输入的引用。

以以下内容为例。

代码语言:javascript
复制
('SELECT * FROM MyTableName WHERE MyColumnID="MyHTMLInputValue"');

我想根据输入字段的值引用行中的所有字段,但不确定如何引用这样的查询。

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2016-09-30 04:36:25

Ajax是最好的选择。

此示例使用jQuery。

首先我们需要设置一个php脚本来获取我们的值并搜索它,然后返回我们的数据。

PHP myPhpScript.php

代码语言:javascript
复制
<?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.

代码语言:javascript
复制
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.
  }
});
});

此代码可能无法工作。只要修复出现的任何语法错误即可。

希望这能有所帮助。

如果你需要更多的帮助,请留言。

票数 1
EN

Stack Overflow用户

发布于 2016-09-30 03:31:24

这听起来不像是个好主意。通常,您希望在站点和数据库之间进行一些分离。你可以接受"MyHTMLInputValue",处理它,然后你就可以完成你的查询。

代码语言:javascript
复制
var myValue = MyHTMLInputValue;
//validate input
('SELECT * FROM MyTableName WHERE MyColumnID="' + myValue + '"')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39778481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档