ユーザーが値を入力すると、mysqlデータベースから詳細がプルされ、ページが表示されずに表示されますリフレッシュ。これは明らかにjavascriptで行われます。PHPとjavascriptはInternet ExplorerとGoogle Chromeでは正常に動作していますが、Samsung Galaxy Androidでは動作しません
これはブラックベリーやタブレットなどのモバイルデバイスからInternet Explorer、Chromeなどで正しく動作し、ユーザーがデータを入力するとフォーマットが乱雑になります。以下のスクリーンショットを参照してください。
インターネットエクスプローラ、テーブル構造がタクトに残っ:
モバイルデバイス(ギャラクシータブレット)、テーブルの構造が変更された:
コード関与する2ページのためのものです下に示された。フロントエンドはjavascriptを使ってmysqlからデータを取り出して表示するPHPページです。
PHPページ:
<html>
<head>
<title>test</title>
<script type="text/javascript">
function showUser(userNumber, str)
{
document.getElementById("r"+(userNumber)).style.display="block";
if (str=="")
{
document.getElementById("txtHint1").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("txtHint1").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getdata1.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>
<form name="orderform" id="orderform" action="newsale.php" method="post">
<div align="left" id="txtHint1">mysql data will be shown here</div>
<br>
<table border="1">
<tr id="r1">
<td>
<input size="8" type="text" id="sku1" name="sku1" onchange="showUser(1, this.value)" >
</td>
<td>
<input type="text" id="qty1" name="qty1" size="3">
</td>
</tr>
<tr id="r2">
<td>
<input size="8" type="text" id="sku2" name="sku2" onchange="showUser(1, this.value)" >
</td>
<td>
<input type="text" id="qty2" name="qty2" size="3" >
</td>
</tr>
</table>
</form>
</body>
</html>
getdata1.phpページmysqlのデータをフェッチする:
<?php
$q=$_GET["q"];
$con = mysql_connect('localhost', 'user', 'pass');
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database", $con);
$sql="SELECT Category, Description,SellingUnits,Grouping,CasesPerPallet,ShrinksPerPallet FROM skudata WHERE packcode = '".$q."'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo "<font color=blue size=2>Description:</font> <font color=red size=2>".$row['Description']."</font>, ";
}
mysql_close($con);
?>
おかげで再びすべてのasistanceのために、それが理解されます。
また、誰かが別のJavaScriptを持っていて、私にmysqlのデータを表示することができますか?私のjavascriptのスキルは存在しません。
おかげで、よろしく、
生成されたHTMLを表示してください(右クリック - >ソースを表示) - 私に飛び跳ねるわけではありませんが、どこかに閉じられていないタグがあるようです。また、doctypeを選んで適切に貼り付けてください。 **すべての**属性値は引用符で囲む必要があります。 ''タグは避けてください。代わりにCSSを使用してください。 – DaveRandom
ありがとう@DaveRandom、私は質問を更新しました。 – Smudger
標準のhtml 1.0 strictまたはhtml5を使用し、それを検証するためにバリデーターを使用してくださいhttp://validator.w3.org/ – ZiTAL