如何拆分输入表单并发送到Mysql

时间:2015-09-18 09:45:47

标签: javascript php jquery html mysqli

我有一个在调用服务器

时效果很好的表单

当一个人发送多个输入代码时,我希望它能够正常工作

如何将其设置为使用textarea而不是短输入

<ScrollViewer x:Name="scrollViewer1">
   <ListBox x:Name="listBox1" ItemsSource="{Binding Data}">
       <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel>
                    <Expander>
                        <Expander.Header>
                            <TextBlock Text="{Binding Name}">
                            </TextBlock>
                        </Expander.Header>
                        <ScrollViewer x:Name="scrollViewer2">
                            <ListBox x:Name="listBox2" ItemsSource="{Binding Numbers}">
                                <ListBox.ItemTemplate>
                                    <DataTemplate>
                                        <StackPanel>
                                            <Grid>
                                                <TextBlock Grid.Column="0" Text="{Binding}"/>
                                            </Grid>
                                        </StackPanel>
                                    </DataTemplate>
                                </ListBox.ItemTemplate>
                            </ListBox>
                        </ScrollViewer>
                    </Expander>
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
   </ListBox>

示例用户写入,RR123456789IL,RR123456789US,RR123456789UK

javascript代码, 获取输入表单并使用jquery返回结果到隐藏的Div

<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="answer_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>

action.php的 接收用户的代码并从服务器返回其结果

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';
}

logger.php - &gt;将数据存储在Mysql数据库中。

我想要的是将表单更改为textarea,并发送多个用逗号或空格分隔的POST代码,每个代码为13位 并返回html的多个答案 并在DB中存储新行中的每个代码。 感谢

数据库插入代码(已更新) logger.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');

?>

1 个答案:

答案 0 :(得分:0)

我猜测你在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);

这就像我走的那样。你正在编写几个问题......