مشکل نمایش پایگاه داده با PDO
سلام دوستان گلم
فایل Connect.php
<?php
$host = 'localhost';
$username = 'root';
$password = '';
$dbname = 'college';
try {
$conn = new PDO("mysql:host = $host;dbname = $dbname",$username,$password);
return $conn;
}
catch(PDOExceptaion $e) {
echo "Can not Connet to Database";
exit();
}
?>
فایل Index.php
<?php
require_once("connect.php");
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Connect to MYSQL With PDO</title>
</head>
<body>
<table border = 1>
<tr>
<th>Name</th>
<th>Family</th>
<th>Avreage</th>
</tr>
<?php
$sql = 'Select * from students';
foreach ($conn -> query($sql) as $row) {
?>
<tr>
<td><?php echo $row['fname']; ?> </td>
<td><?php echo $row['lname']; ?> </td>
<td><?php echo $row['avrage']; ?> </td>
</tr>
<?php } ?>
</table>
</body>
</html>
بعد از اجرا این خطا رو می ده :
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\pdo\index.php on line 19
خط 19 هم Foreach هست
نقل قول: مشکل نمایش پایگاه داده با PDO
فایل php.ini رو چک کنید ببیند که extension=php_pdo_mysql.dll پشت این ; نباشه !
نقل قول: مشکل نمایش پایگاه داده با PDO
این درست هست
$sth = $conn->prepare($sql);
$sth->execute();
$result = $sth->fetchAll();
شما باید $result رو توی foreach بزارید
نقل قول: مشکل نمایش پایگاه داده با PDO
نقل قول:
نوشته شده توسط
navid3d_69
این درست هست
$sth = $conn->prepare($sql);
$sth->execute();
$result = $sth->fetchAll();
شما باید $result رو توی foreach بزارید
کد خودشون هم درست است !
نقل قول: مشکل نمایش پایگاه داده با PDO
بدون statement کار کنه PDO
نقل قول: مشکل نمایش پایگاه داده با PDO
نقل قول:
نوشته شده توسط
engmmrj
فایل php.ini رو چک کنید ببیند که extension=php_pdo_mysql.dll پشت این ; نباشه !
ممنون از پاسخت
ولی درست نشد
نقل قول: مشکل نمایش پایگاه داده با PDO
نقل قول:
نوشته شده توسط
navid3d_69
این درست هست
$sth = $conn->prepare($sql);
$sth->execute();
$result = $sth->fetchAll();
شما باید $result رو توی foreach بزارید
ممنون
متوجه نشدم ، میشه همین کد من رو تغییر بدید
نقل قول: مشکل نمایش پایگاه داده با PDO
این کد رو جای کد قلی بزارین
$sql = 'Select * from students';
$sth = $conn->prepare($sql);
$sth->execute();
$result = $sth->fetchAll();
foreach ($result as $key=>$row) {
نقل قول: مشکل نمایش پایگاه داده با PDO
کد شما رو جایگزین کردم ، خطا رفع شد ولی اطلاعات نمایش داده نشد !
نقل قول: مشکل نمایش پایگاه داده با PDO
نقل قول:
نوشته شده توسط
PHPOnline
کد شما رو جایگزین کردم ، خطا رفع شد ولی اطلاعات نمایش داده نشد !
چون در اون کد اطلاعات Print نشده !@
نقل قول: مشکل نمایش پایگاه داده با PDO
نقل قول:
نوشته شده توسط
PHPOnline
سلام دوستان گلم
فایل Connect.php
<?php
$host = 'localhost';
$username = 'root';
$password = '';
$dbname = 'college';
try {
$conn = new PDO("mysql:host = $host;dbname = $dbname",$username,$password);
return $conn;
}
catch(PDOExceptaion $e) {
echo "Can not Connet to Database";
exit();
}
?>
فایل Index.php
<?php
require_once("connect.php");
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Connect to MYSQL With PDO</title>
</head>
<body>
<table border = 1>
<tr>
<th>Name</th>
<th>Family</th>
<th>Avreage</th>
</tr>
<?php
$sql = 'Select * from students';
foreach ($conn -> query($sql) as $row) {
?>
<tr>
<td><?php echo $row['fname']; ?> </td>
<td><?php echo $row['lname']; ?> </td>
<td><?php echo $row['avrage']; ?> </td>
</tr>
<?php } ?>
</table>
</body>
</html>
بعد از اجرا این خطا رو می ده :
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\pdo\index.php on line 19
خط 19 هم Foreach هست
خوب باید هم error میگرفتید , نحوه کار کردن با PDO رو اگر کمی جستجو می کردید حتما به نتیجه میرسیدید .یه تکه کد از یه کلاسم رو برات میزارم
private function connection() {
try {
$pdoCfg = array(PDO::ATTR_PERSISTENT => true, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'");
$pdo = new PDO("mysql:host=localhost;dbname=weblog;charset=UT F-8", "root", "", $pdoCfg);
return $pdo;
} catch (PDOException $e) {
echo "Failed to get DB handle: " . $e -> getMessage() . "\n";
exit ;
}
}
private function Get_statistic() {
try {
$flag = $this -> connection();
$select = $flag -> prepare("SELECT sid,date,count FROM weblog.static");
$select -> execute();
return $select;
} catch (PDOException $e) {
echo "Fail to catch visit from Dataase";
}
}
و
private function make_date_visit() {
$pd = new bn_parsidate;
$now = $this -> ChengeNumToEng(bndate('ymd'));
$getStatistic = $this -> Get_statistic();
for ($i = 0; $row = $getStatistic -> fetch(PDO::FETCH_ASSOC); $i++) {
if ($now == $row['date']) {
$this -> statistic['todaye'] = $row['count'];
$this -> Ustatistic['todaye'] = $this -> Get_unique_statistic($row['sid']);
}