سلام ، وقتتون بخیر
من تمام مراحلی که استاد طی پروژه انجام دادند رو جلو رفتم اما وقتی روی دکمه حذف فولدر کلیک میکنم با این خطا رو به رو میشم ، شکل کلی خطا به این شکل هست :
Notice: Array to string conversion in C:\xampp\htdocs\ForestKnight.php\7Todo\libs\libs-tasks.php on line 30
: که در لاین ۳۰ همین خطا من کد های کوئری به دیتابیس رو دارم
function deleteFolder($folder_id){
global $dbh;
$sql = "DELETE FROM folders WHERE id = $folder_id";
$stmt = $dbh->prepare($sql);
$stmt->execute();
return $stmt->rowCount();
}
.تمام سعیم رو کردم که خطا رو برطرف کنم ، براساس ویدیو هم جلو رفتم بازهم همین خطارو میاره
باید حتما از آرایه $GET که داخلش delete_folder وجود داره و مقدارش آیدی فولدر هستش و پاس بدیم، به این شکل:
$_GET['delete_folder']
دورد
ظاهرا ورودی که به تابهتون میدید یک آرایه هستش، نوع ورودیتون رو حتما چک کنید و مطمئن شید که یک عدد میاد.
function deleteFolder($folder_id){
var_dump(gettype($folder_id));
die();
global $dbh;
$sql = "DELETE FROM folders WHERE id = $folder_id";
$stmt = $dbh->prepare($sql);
$stmt->execute();
return $stmt->rowCount();
}
کد بالا رو اجرا کنید و ببینید نوع ورودی که میاد سمتتون چیه
بله ورودی آرایه هستش ، چطور میتونم ورودی رو تغییر بدم ؟
string(5) "array"
این جایی هست که مقدار به تابع داده میشه :
<?php foreach($folders as $folder){?>
<li>
<a href="?folder_id=<?= $folder->id ?>"><i class="fa fa-folder"></i><?= $folder->name ?></a>
<a href="?delete_folder=<?= $folder->id ?>"><i class="fa fa-trash-o"></i></a>
</li>
<?php };?>