У меня есть пользовательская форма, которая работает отлично. Страница использует сценарий javascript, который выполняет запрос mysql из внешнего php-файла и отображает результаты в таблице.
Что я хочу сделать, так это иметь возможность отображать результаты нескольких различных запросов в форме.
У меня есть 4 файла в этом примере.
test.php который является формой
getdata1.php, который получает результаты MySQL для информации о продукте
getwhse1.php, который извлекает результаты mysql для информации хранилища
getsu1.php, который извлекает результаты MySQL для продажи информации о единицах
В настоящее время скрипт работает только при получении результатов из getdata1.php? Как мне изменить javascripscript, чтобы я мог также отображать результаты из getwhse1.php и getsu1.php?
Ниже приведен код для существующих страниц. Я хочу, чтобы я мог ввести код продукта и отобразить сведения о нем в каждом из полей таблицы.
test.php
<html>
<head>
<title>Sales Portal</title>
<script type="text/javascript">
function showUser(userNumber, str)
{
if (str=="")
{
document.getElementById("txtHint" + userNumber).innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint" + userNumber).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getdata1.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body topmargin=0>
<form name="orderform" id="orderform" action="newsale.php" method="post">
<table border=1>
<tr>
<td>Product Code</td>
<td>Description</td>
<td>Warehouse</td>
<td>Selling Units</td>
</tr>
<tr id="r1">
<td width=100>
<input size=10 type=number id=sku1 name=sku1 onchange="showUser(1, this.value)">
</td>
<td width=280>
<div align="left" id="txtHint1"> </div>
</td>
<td width=100>
<div align="left" id="whse1"> </div>
</td>
<td width=100>
<div align="left" id="su1"> </div>
</td>
</tr>
<tr id="r2">
<td>
<input size=10 type=number id=sku2 name=sku2 onchange="showUser(2, this.value)">
</td>
<td>
<div align="left" id="txtHint2"> </div>
</td>
<td>
<div align="left" id="whse2"> </div>
</td>
<td width=100>
<div align="left" id="su2"> </div>
</td>
</tr>
<tr id="r3">
<td>
<input size=10 type=number id=sku3 name=sku3 onchange="showUser(3, this.value)">
</td>
<td>
<div align="left" id="txtHint3"> </div>
</td>
<td>
<div align="left" id="whse3"> </div>
</td>
<td width=100>
<div align="left" id="su3"> </div>
</td>
</tr>
<tr id="r4">
<td>
<input size=10 type=number id=sku4 name=sku4 onchange="showUser(4, this.value)">
</td>
<td>
<div align="left" id="txtHint4"> </div>
</td>
<td>
<div align="left" id="whse4"> </div>
</td>
<td width=100>
<div align="left" id="su4"> </div>
</td>
</tr>
</table>
</form>
</body>
</html>
getdata1.php
<?php
$q=$_GET["q"];
$con = mysql_connect('localhost', 'username', 'password');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("dbname", $con);
$sql="SELECT Category, Description,SellingUnits,Grouping,CasesPerPallet,ShrinksPerPallet FROM skudata WHERE packcode = '".$q."'";
$result = mysql_query($sql);
$rows=mysql_num_rows($result);
if($rows==0){echo "<font color=red><b>NOT A VALID PRODUCT CODE</b></font>";} else {
while($row = mysql_fetch_array($result))
{
echo "<font color=red>".$row['Description']."</font>, ";
if($row['SellingUnits']=="CS"){echo "<font color=red>".$row['CasesPerPallet']."</font> ";} elseif($row['SellingUnits']=="SHR") {echo "<font color=red>".$row['ShrinksPerPallet']."</font> ";}
}}
mysql_close($con);
?>
getwhse1.php
<?php
$q=$_GET["q"];
$con = mysql_connect('localhost', username', 'password');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database", $con);
$sql="SELECT grouping FROM skudata WHERE packcode = '".$q."'";
$result = mysql_query($sql);
$rows=mysql_num_rows($result);
if($rows==0){echo " ";} else {
while($row = mysql_fetch_array($result))
{
echo "<font color=red>".$row['grouping']."</font>, ";
}}
mysql_close($con);
?>
getsu1.php
<?php
$q=$_GET["q"];
$con = mysql_connect('localhost', 'username', 'password');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database", $con);
$sql="SELECT SellingUnits FROM skudata WHERE packcode = '".$q."'";
$result = mysql_query($sql);
$rows=mysql_num_rows($result);
if($rows==0){echo " ";} else {
while($row = mysql_fetch_array($result))
{
echo "<font color=red>".$row['SellingUnits ']."</font>, ";
}}
mysql_close($con);
?>
Мои навыки работы с JavaScript не существуют, как я могу отредактировать этот скрипт для выполнения всех трех запросов mysql и отображения результатов на странице? все активируется путем ввода кода продукта?
Спасибо и всего наилучшего,
Райан