gpt4 book ai didi

php - 如何通过 php 将这些 Jquery 变量发送到 Mysql?

转载 作者:行者123 更新时间:2023-11-29 14:45:04 24 4
gpt4 key购买 nike

我制作了一个简单(但非常规)的表单,将每个答案存储为变量(我这样做是因为有些问题不会得到回答,因为某些问题的显示取决于您对上一个问题的回答)。

我想将其发送到一个 php 文件,该文件将搜索 Mysql 数据库中是否有匹配项,并以 xml 格式返回。

以下是变量:

  • 答案1:如果填写,必须等于mysql中的内容
  • 复选框1/2/3/3:如果选中其中一个或多个,将检索数据。例如,如果选中“咖啡”和“果汁”,则将返回咖啡或果汁设置为 true 的行。
  • Dropdown1/2:两个指定范围的 from/to 变量

这是我的代码:) http://jsfiddle.net/pufamuf/S6smg/1/

HTML:

<div id="que1">Question One:
<input id="inp1" type="text">
<input type="button" value="Next Question" id="but1"></div>

<div id="que2" class="hiddendiv">Question Two:<br>
<input type="checkbox" id="checkbox1" value="coffee">Coffee<br>
<input type="checkbox" id="checkbox2" value="tea">Tea<br>
<input type="checkbox" id="checkbox3" value="latte">Latte<br>
<input type="checkbox" id="checkbox4" value="juice">Juice<br>
<input type="button" value="Next Question" id="but2"></div>

<div id="que3" class="hiddendiv">Question Three:
From:
<select id="dropdown1">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
To:
<select id="dropdown2">
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<input type="button" value="Finish" id="but3"></div>

<br><br><br>
<b>Variables</b><br>
Answer1:<div id="answer1"></div>
Checkbox1:<div id="answer2a"></div>
Checkbox2:<div id="answer2b"></div>
Checkbox3:<div id="answer2c"></div>
Checkbox4:<div id="answer2d"></div>
Dropdown1:<div id="answer3a"></div>
Dropdown2:<div id="answer3b"></div>

Jquery:

$("input[type='button']").click(function() {
var question1 = '';
var question2a = '';
var question2b = '';
var question2c = '';
var question2d = '';
var question3a = '';
var question3b = '';
switch (this.id) {
case 'but1':
question1 = $("#inp1").val();
$("#answer1").html(question1);
$('#que1').addClass('hiddendiv');
$('#que2').removeClass('hiddendiv');
break;
case 'but2':
if($('#checkbox1').is(':checked')){
question2a = '1';
}
if($('#checkbox2').is(':checked')){
question2b = '1';
}
if($('#checkbox3').is(':checked')){
question2c = '1';
}
if($('#checkbox4').is(':checked')){
question2d = '1';
}
$("#answer2a").html(question2a);
$("#answer2b").html(question2b);
$("#answer2c").html(question2c);
$("#answer2d").html(question2d);
$('#que2').addClass('hiddendiv');
$('#que3').removeClass('hiddendiv');
break;
case 'but3':
question3a = $("#dropdown1").val();
question3b = $("#dropdown2").val();
$('#que3').addClass('hiddendiv');
$("#answer3a").html(question3a);
$("#answer3b").html(question3b);
break;
}
});

非常感谢大家:)))!

这是我的旧 html 表单的 php 文件现在的样子:

<?php
require("db_access.php");

function parseToXML($htmlStr)
{
$xmlStr=str_replace('<','&lt;',$htmlStr);
$xmlStr=str_replace('>','&gt;',$xmlStr);
$xmlStr=str_replace('"','&quot;',$xmlStr);
$xmlStr=str_replace("'",'&#39;',$xmlStr);
$xmlStr=str_replace("&",'&amp;',$xmlStr);
return $xmlStr;
}

$name=$_POST['name'];
$address=$_POST['address'];
$type=$_POST['type'];


// Opens a connection to a MySQL server
$connection=mysql_connect (localhost, $username, $password);
if (!$connection) {
die('Not connected : ' . mysql_error());
}

// Set the active MySQL database
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
die ('Can\'t use db : ' . mysql_error());
}




// Select all the rows in the markers table
$inputs = array('name', 'address', 'type');
$where = array();

foreach($inputs as $input)
{
if(!empty($_POST[$input])) {
$where[] = "{$input} = '" . mysql_real_escape_string($_POST[$input]) . "'";
}
}

if ($where) {
$query = 'SELECT * FROM markers WHERE ' . implode(' AND ', $where);
} else {
user_error("No rows returned by:<br />\n$query");
}
$result = mysql_query($query);
if($result == false) {
die(mysql_error() . "<br />\n$query");
}
if(mysql_num_rows($result) == 0) {
user_error("No rows returned by:<br />\n$query");
}

header("Content-type: text/xml");

// Start XML file, echo parent node
echo '<markers>';

// Iterate through the rows, printing XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
// ADD TO XML DOCUMENT NODE
echo '<marker ';
echo 'name="' . parseToXML($row['name']) . '" ';
echo 'address="' . parseToXML($row['address']) . '" ';
echo 'type="' . parseToXML($row['type']) . '" ';
echo 'lat="' . $row['lat'] . '" ';
echo 'lng="' . $row['lng'] . '" ';
echo '/>';
}

// End XML file
echo '</markers>';

?>

最佳答案

您需要向 PHP 页面发出 HTTP 请求,并在服务器端处理表单数据。根据表单类型,它将采用 $_GET$_POST

如果您想使用 AJAX 来完成此操作,可以使用 form plugin或者通过收集数据并使用 $.get 提交来手动完成。

  1. 为每个表单元素分配一个name值。
  2. 使用 name 从中提取表单数据,例如,如果字段名为 foo 并且您使用 POST 请求数据,则可以使用 $_POST['foo'].

关于php - 如何通过 php 将这些 Jquery 变量发送到 Mysql?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7138098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com