Простой код ajax, в котором я хочу отображать только записи таблицы Mysql:
list.php:
<html>
<head>
<script src="jquery-1.9.1.min.js">
</script>
<script>
$(document).ready(function() {
var response = '';
$.ajax({
type: "GET",
url: "Records.php",
async: false,
success: function(text) {
response = text;
}
});
alert(response);
});
</script>
</head>
<body>
<div id="div1">
<h2>Позвольте jQuery AJAX изменить этот текст </h2>
</div>
<button>Получить записи </button>
</body>
</html>
Records.php — это файл для извлечения записей из Mysql.
В базе данных всего два поля: «Имя», «Адрес».
<?php
//database name = "simple_ajax"
//table name = "users"
$con = mysql_connect("localhost","root","");
$dbs = mysql_select_db("simple_ajax",$con);
$result= mysql_query("select * from users");
$array = mysql_fetch_row($result);
?>
<tr>
<td>Name: </td>
<td>Address: </td>
</tr>
<?php
while ($row = mysql_fetch_array($result)) {
echo "<tr>";
echo "<td>$row[1]</td>";
echo "<td>$row[2]</td>";
echo "</tr>";
}
?>
Этот код не работает. В чем моя проблема?
Ответ 1
Для получения данных с помощью Ajax + jQuery необходимо написать следующий код:
<html>
<script type="text/javascript" src="jquery-1.3.2.js"> </script>
<script type="text/javascript">
$(document).ready(function() {
$("#display").click(function() {
$.ajax({ //создайте ajax-запрос к файлу display.php
type: "GET",
url: "display.php",
dataType: "html", // ожидаем возврата html
success: function(response){
$("#responsecontainer").html(response);
//alert(response);
}
});
});
});
</script>
<body>
<h3 align="center">Manage Student Details</h3>
<table border="1" align="center">
<tr>
<td> <input type="button" id="display" value="Display All Data" /> </td>
</tr>
</table>
<div id="responsecontainer" align="center">
</div>
</body>
</html>
Для подключения mysqli напишите следующее:
<?php
$con=mysqli_connect("localhost","root","");
Для отображения данных из базы необходимо написать следующее:
<?php
include("connection.php");
mysqli_select_db("samples",$con);
$result=mysqli_query("select * from student",$con);
echo "<table border='1' >
<tr>
<td align=center> <b>Roll No</b></td>
<td align=center><b>Имя</b></td>
<td align=center><b>Адрес</b></td>
<td align=center><b>Поток</b></td></td>
<td align=center><b>Статус</b></td>";
while($data = mysqli_fetch_row($result)) {
echo "<tr>";
echo "<td align=center>$data[0]</td>";
echo "<td align=center>$data[1]</td>";
echo "<td align=center>$data[2]</td>";
echo "<td align=center>$data[3]</td>";
echo "<td align=center>$data[4]</td>";
echo "</tr>";
}
echo "</table>";
?>
Ответ 2
Вы не можете вернуть возвращаемое значение ajax. Вы сохранили глобальную переменную, чтобы сохранить возвращаемые значения после возврата.
Или измените код на этот:AjaxGet = function (url) {
var result = $.ajax({
type: "POST",
url: url,
param: '{}',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (data) {
// здесь ничего не нужно
}
}) .responseText ;
return result;
}
Ответ 3
Убедитесь, что вы $row[1] , $row[2] указали правильное значение, мы предполагаем, что здесь 1 = Имя , а 2 поле Адрес ?
Предполагая, что вы правильно загрузили свои записи из Records.php , вы можете сделать что-то вроде этого:
$(document).ready(function() {
$('#getRecords').click(function() {
var response = '';
$.ajax({ type: 'POST',
url: "Records.php",
async: false,
success : function(text){
$('#table1').html(text);
}
});
});
}
HTML:
<table id="table1">
//Пусть jQuery AJAX изменит этот текст
</table>
<button id='getRecords'>Получение записей</button>
Ответ 4
<html>
<!--Save this as index.php-->
<script src="//code.jquery.com/jquery-1.9.1.js"></script>
<script src="//ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#display").click(function() {
$.ajax({ //создайте ajax-запрос к файлу display.php
type: "GET",
url: "display.php",
dataType: "html", // ожидайте возвращения html
success: function(response){
$("#responsecontainer").html(response);
//alert(response);
}
});
});
});
</script>
<body>
<h3 align="center">Manage Student Details</h3>
<table border="1" align="center">
<tr>
<td> <input type="button" id="display" value="Display All Data" /> </td>
</tr>
</table>
<div id="responsecontainer" align="center">
</div>
</body>
</html>
<?php
// сохраните это в display.php
// отображение ошибок
error_reporting(E_ALL);
ini_set('display_errors', 1);
// ошибки заканчиваются здесь
// вызов страницы для подключения к базе данных
require_once('dbconnector.php');
?>
<?php
$get_member =" SELECT
empid, lastName, firstName, email, usercode, companyid, userid, jobTitle, cell, employeetype, address ,initials FROM employees";
$user_coder1 = $con->prepare($get_member);
$user_coder1 ->execute();
echo "<table border='1' >
<tr>
<td align=center> <b>Roll No</b></td>
<td align=center><b>Name</b></td>
<td align=center><b>Address</b></td>
<td align=center><b>Stream</b></td></td>
<td align=center><b>Status</b></td>";
while($row =$user_coder1->fetch(PDO::FETCH_ASSOC)){
$firstName = $row['firstName'];
$empid = $row['empid'];
$lastName = $row['lastName'];
$cell = $row['cell'];
echo "<tr>";
echo "<td align=center>$firstName</td>";
echo "<td align=center>$empid</td>";
echo "<td align=center>$lastName </td>";
echo "<td align=center>$cell</td>";
echo "<td align=center>$cell</td>";
echo "</tr>";
}
echo "</table>";
?>
<?php
// сохраните это в dbconnector.php
function connected_Db(){
$dsn = 'mysql:host=localhost;dbname=mydb;charset=utf8';
$opt = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
);
#echo "Да, мы подключены ";
return new PDO($dsn,'username','password', $opt);
}
$con = connected_Db();
if($con){
//echo "успешное соединение ";
}
else {
//echo "ошибки при соединении ";
exit();
}
?>
Web