我有一个表单在调用服务器时工作良好
我希望当一个人发送多个输入代码时它能工作
我如何设置它与textarea而不是短输入工作
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="" method="POST">
<input class="input" name="search" id="search" value="" size="13" maxlength="13" dir="ltr" autocomplete="on" type="text" width="150" height="20" onchange="document.getElementById('yq_num').value = this.value;">
<input value="חפש" name="button" alt="submit" onclick="showDiv();" border="0" type="button" align="absmiddle">
</form>
<div id="hiddenDiv" class="answerswer_list"></div>
NEW FORM
<form action="" method="POST">
<textarea name="search" rows="4" cols="50" id="search"> </textarea>
<input value="search" name="button" alt="submit" onclick="showDiv();" border="0" type="button" align="absmiddle">
</form>
示例用户写,RR123456789IL, RR123456789US, RR123456789UK
javascript代码接受输入表单,并使用jquery将结果返回到隐藏的Div
document.getElementById('quickContactForm')
$(document).ready(function(){
//$("#hiddenDiv").hide();
});
function showDiv(){
var str=$("#search").val();
var url="action.php?show="+str;
console.log('url'+url);
$.get(url,function(data,status){
// alert("Data: " + data + "'nStatus: " + status);
$("#hiddenDiv").html(data);
$("#hiddenDiv").show();
});
document.getElementById('signup').style.display = 'block';
}
action.php从服务器接收用户代码并返回结果
<?php
//$itemCode = "RR123456789IL";
$itemCode = $_GET["show"];
$itemType = substr( $itemCode, 0, 2 ) . substr( $itemCode, -2 );
$url = "http://www.israelpost.co.il/itemtrace.nsf/trackandtraceJSON?openagent&_=1412972965324&lang=HE&itemcode={$itemCode}&sKod2={$itemType}";
$json = file_get_contents($url);
$obj = json_decode($json);
echo $obj->{'itemcodeinfo'}; // 12345
require_once('logger.php');
?>
log .php ->在Mysql数据库中存储数据
我想要的是将表单更改为textarea,并发送多个POST代码,用逗号或空格分隔,每个代码是13位数字并向HTML返回多个答案并将每个代码存储在DB中的新行中。由于
数据库插入代码(已更新)logger.php
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$time = date('Y-m-d H:i:s');
$IP = "$_SERVER[REMOTE_ADDR]";
$sql = "INSERT INTO enterlog (ItemCode, EnterDate, IPAddress, Info) VALUES ('$itemCode', '$time', '$IP', '$obj')";
if (mysqli_query($conn, $sql)) {
echo "";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>
我猜你需要explode
功能在你的logger.php
。
$string = $_POST['value']; // Your codes, separated by a comma
$strings = explode(",", $string);
foreach ($strings as $string) {
echo $string; // This should be each code you want
}
发送数据到数据库是非常简单的,应该在foreach
循环内完成,因为你想要每个代码的新行。
$query = "INSERT INTO `table_name` (`code`) VALUES ('" . $string . "')";
$con->query($query);
我只能走这么远。你把几个问题合二为一了……