ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : نمایش پیغام خطا بعد از رفرش شدن ضفحه



<?php?>
April 30th, 2016, 11:03
وقتی کاربر یک فیلدی رو میخواد حذف کنه . رویه ( حذف ) کلیک میکنه id مورد نظر تو url قرار میگیره و در صورت حضورش تو دیتابیس اون فیلد رو حذف میکنیم .
خب . میخوام بعد از حذف اروری بر مبنای ( موفقیت : رکورد شما حذف شد ! ) نمایش بهش بدم .
این کدمه . کار میکنه فقط مشکلم نمایش پیغام بعد رفرش شدنه :

if(isset($_GET['id']) && !empty($_GET['id'])){
$id=(int) $_GET['id'];
$delete1='';
$result7=$connect->prepare("SELECT `id` FROM `db_category` WHERE `id`=?");
$result7->bindValue(1,$id);
if($result7->execute()){
$count2=$result7->rowCount();
if($count2===1){
$result8=$connect->prepare("DELETE FROM `db_category` WHERE `id`=?");
$result8->bindValue(1,$id);
if($result8->execute()){
header('location: category.php');
$delete1='رکورد مورد نظر خذف شد';
die;
}
else{
header('location: category.php');
die;
}
}
}
else{
header('location: category.php');
die;
}
}

miladtnt
April 30th, 2016, 11:17
برا کاربر یه session بدید که محتواش متن ارور یا موفقیت باشه تو صفحه ک بش منتقل میشه (بعد رفرش) دستور شرطی بزارید اگه session بود پیام موفقیت رونشون بده بعد session رو پاک کنه

Yas-Host
April 30th, 2016, 11:19
سلام.

کد رو به صورت زیر تغییر دهید:

header('location: category.php?deleted=true');
die;

شما اقدام تغییر آدرس به category.php می کنید و اصلا به قسمت $delete1 نمیرسه!

برای اینکار می تونید از alert java script استفاده کنید.

اگر حذف شد به آدرس category.php?deleted=true هدایت بشه سپس در category.php تعریف می کنید که اگر در get deleted = true باشد پیغام را نمایش دهد.

http://paste.ubuntu.com/16139860/


موفق باشید.

<?php?>
April 30th, 2016, 11:21
برا کاربر یه session بدید که محتواش متن ارور یا موفقیت باشه تو صفحه ک بش منتقل میشه (بعد رفرش) دستور شرطی بزارید اگه session بود پیام موفقیت رونشون بده بعد session رو پاک کنه

به غیر سشن نمیشه از روش دیگه استفاده کرد ؟

شنیدم دستورات مثل die , exit وقتی دارن اتمام صفحه رو اعلام میکنن میتونن با خودشون یک مقدارم هم ببرن .

miladtnt
April 30th, 2016, 11:22
سلام.

کد رو به صورت زیر تغییر دهید:

header('location: category.php?deleted=true');
die;

شما اقدام تغییر آدرس به category.php می کنید و اصلا به قسمت $delete1 نمیرسه!

برای اینکار می تونید از alert java script استفاده کنید.

اگر حذف شد به آدرس category.php?deleted=true هدایت بشه سپس در category.php تعریف می کنید که اگر در get deleted = true باشد پیغام را نمایش دهد.

http://paste.ubuntu.com/16139860/


موفق باشید.
اخه اونوخ هی از اون صفحه با متد گت بازدید کنه مینویسه حذف شد که:d

Yas-Host
April 30th, 2016, 11:24
اخه اونوخ هی از اون صفحه با متد گت بازدید کنه مینویسه حذف شد که:d

بله اما می توان از $_post هم استفاده کرد.

البته اینکار اصولی هم نیست و بهترین کار همان سیشن است

البته php گسترده است ممکن است روش های بهتری هم باشد(که قطعا هست) که استاید انجمن حتما راهنمایی خواهند کرد.

miladtnt
April 30th, 2016, 11:31
به غیر سشن نمیشه از روش دیگه استفاده کرد ؟

شنیدم دستورات مثل die , exit وقتی دارن اتمام صفحه رو اعلام میکنن میتونن با خودشون یک مقدارم هم ببرن .

Session نشد cookie :)

من خودم برا سایت خودم ک نوشتم از روشی که اقای یاس هاست گفتن استفاده میکنم :/ ولی اینی بهتون گفتم اصولی تره :) high level هس برا شما که میخواید سی ام اس بنویسید

- - - Updated - - -


بله اما می توان از $_post هم استفاده کرد.

البته اینکار اصولی هم نیست و بهترین کار همان سیشن است

البته php گسترده است ممکن است روش های بهتری هم باشد(که قطعا هست) که استاید انجمن حتما راهنمایی خواهند کرد.

بله بهترین روش همون post هست ورد پرس اینام فک کنم ازون روش استفاده میکنن ولی من باتوجه به روش ایشون گفتم که از header استفاده کرده بودن دیه نخواستم کدشونو کلا عوض کنم