1
私は新しいyii develeperです。 私のデータベースをリストし、すべての要素の横にボタンを置いて、クリエットボタンをクリックすると、コンピュータはすべての詳細を表示します。 は、ここに私のビューファイルです:yii2のJavascriptが応答していません
<h1> پایگاه داده ما </h1>
<script>
function showUser(Id) {
var xmlhttp;
if (Id == 0) {
document.getElementById("showmore").innerHTML = "Test";
return;
}
if (window.XMLHttpRequest)
{
// IE7+, Firefox, Chrome, Opera, Safari کد لازم براي مرورگر هاي جديد
document.getElementById("showmore").innerHTML = "Test2";
xmlhttp = new XMLHttpRequest();
}
else
{
// IE6, IE5 کد براي مرورگرهاي قديمي
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function ()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
document.getElementById("showmore").innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open("GET", "localhost/datils.php?q=" + Id, true);
xmlhttp.send ();
}
</script>
<style>
span
{
color: white;
}
</style>
<?php
use yii\widgets\LinkPager;
echo '<br>';
foreach($show as $k =>$v)
{
$Id= $v['id'];
//$Id=0;
echo $Id.".";
echo $v ['countryName'];
echo '<ul>';
echo '<li> پایتخت :';
echo $v ['capital'];
echo '</li>';
echo '<li>'.'جمعیت :';
echo '<span >i</span>'.(string)$v['population'];
echo '</li>';
echo '</ul>';
echo "<button value=$Id , onclick=showUser(this.value)>More</button>";
echo "<div id=showmore> </div>" ;
echo '<hr>';
}
echo LinkPager::widget([
'pagination'=>$page
]);
?>
そして、ここに私のdatils.phpファイルです:
<?php
$q=$_GET["q"];
// این دستور مقدار پارامتر ارسالی از دستور ای جکس را دریافت می کند
$con = mysqli_connect("localhost", "root" , '' ,'mydatabase1'); // ایج اد ارتباط با پایگاه داده مورد نظر
if ($con->connect_error)
{
die("Connection failed: " . $con->connect_error);
}
$sql="SELECT * FROM countries WHERE id = '".$q."'"; // q دریافت اطلاعات از جدول مورد نظر بر مبنای پارامتر
$result = mysqli_query($con,$sql); // result ریختن نتیجه عملیات انتخاب اطلاعات از پایگاه داده در متغیر
echo "<table border='1'>
<tr>
<th>countryName</th>
<th>currencyCode</th>
<th>population</th>
</tr>";
while($row = mysqli_fetch_array($result)) // ساخت جدول در خروجی با نتیجه دریافتی از پایگاه داده
{
echo "<tr>";
echo "<td>" . $row['countryName'] . "</td>";
echo "<td>" . $row['currencyCode'] . "</td>";
echo "<td>" . $row['population'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysqli_close($con); /* // قطع ارتباط با پایگاه داده*/
?>
私の問題は、これが機能していないです!ライン
document.getElementById("showmore").innerHTML = "Test2";
は正常に動作し、それが私の機能が働いていることを意味、それは応答しません。
nse詳細.php。 私を案内してください!