آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

مشکل با نوشتن تأیید برای حذف کاربر از دیتا بیس

mahmood.hojabri  10 سال پیش  10 سال پیش
0 0

با سلام خدمت شما و دوستان ارجمند.
من یه کلاس دارم که شامل فانکشنهایی مثل delete,login و... هست و همه به درستی برای ثبت یا تغییر یا حذف اطلاعات توی database کار میکنن.
من میخوام تأیید واسه حذف رکورد بذارم. این رو بگم که اگه تأیید نذارم دیلیت به درستی کار میکنه.
این هم کد:

 ///// Delete A record
elseif($_GET['act']=='del'){
    require_once '../classes/user.class.php';
    $us=new User();
    $us->user_id=$_GET['id'];
?>
آیا میخواهید این نام کاربری را حذف نمایید؟
<br>
<a href="user_management.php?action=delyes&id=<?php echo $us->user_id;?>">بله</a>
<a href="user_management.php?action=delno">خیر</a>
<?php
if ($_GET['action']=="delyes"){
$us->Delete();
echo "shod";
    }elseif ($_GET['action']=="delno"){
echo "nashod";
}
}


لطفا راهنمایی کنید چون الان کد کار نمیکنه.

0 0
لطفا کد هاتون رو مرتب کنید و داخل تگ مربوطه قرار دهید . (10 سال پیش)
0 0
متاسفانه من نمیتونم با تولبار سایت کار کنم چون برای نابینایان نامناسب است. (10 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
کاشی زاده  10 سال پیش
+1 0

متن شما توسط بنده ویرایش شد ، ولی با توجه به ناقص بودن متن اگر دقیق تر مشکل رو مطرح کنید شاید بتونم کمکی بهتون بکنم . ولی برای اینکه تایید حذف رو بگیرید به نظر من بهترین راه استفاده از Javascript و تعریف یک فرم confrim میباشد که نمونه کد آن را در زیر قرار دادم ، داخل شرطی که نوشتم میتونید کد های مربوط به حذف را استفاده کنید .

 <script>

var result = confirm("Want to delete?");
if (result) {
//Logic to delete the item
}

</script>

 

0 0
سلام. بابت پاسخ شما ممنونم. راهی هست که yes و no یا ok و cancel به فارسی باشن؟ (10 سال پیش)
0 0
با سلام. کد رو به شکل زیر تغییر دادم: لینک Delete A record }elseif($_GET['act']=='del'){ require_once '../classes/user.class.php'; $us=new User(); $us->user_id=$_GET['id']; ?>  [removed] var result = confirm("want to delete?"); if (result) { <?php $us->Delete(); header("location: user_management.php");?> } [removed] ولی متاسفانه هیچ تأییدی نمیاد و رکورد حذف میشه. (10 سال پیش)
پاسخ به سوال 
کاشی زاده  10 سال پیش
+1 0

برای اینکه دایلوگ مورد نظر رو کاملا سفارشی کنید میتونید از JQueryUI استفاده کنید .

نمونه کد :

 <!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Dialog - Modal confirmation</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
$( "#dialog-confirm" ).dialog({
resizable: false,
height:140,
modal: true,
buttons: {
"Delete all items": function() {
$( this ).dialog( "close" );
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
});
</script>
</head>
<body>

<div id="dialog-confirm" title="Empty the recycle bin?">
<p><span class="ui-icon ui-icon-alert" style="float:left; margin:0 7px 20px 0;">
</span>These items will be permanently deleted and cannot be recovered. Are you sure?</p>
</div>

<p>Sed vel diam id libero <a href="http://example.com">rutrum convallis</a>
. Donec aliquet leo vel magna. Phasellus rhoncus faucibus ante. Etiam bibendum, enim faucibus aliquet rhoncus,
arcu felis ultricies neque, sit amet auctor elit eros a lectus.</p>

</body>
</html>

این کد رو برای تایید استفاده کنید .

توجه داشته باشید که دستور حذف یک متد در php میباشد و فرم تایید شما یک دستور JavaScript و درواقع شما باید کلاینت رو به سرور وصل کنید .

برای این کار میتونید از ajax استفاده کنید یا از دستورات ارسال javascript مثل این :

 window.location.href='index.php?delete_id='+id;

که با این کار به صورت GET در خواست شما ارسال میگردد ولی از نظر امنیت توصیه نمیشود .

0 0
با سلام. تشکر. آیا نمیشه من کد php خودم رو بدون جاوا اسکریپت اصلاح کنم؟ آخه همین کد رو توی یه صفحه دیگه نوشتم کار کرده. (10 سال پیش)
+1 0
چرا شما میتونید یک صفحه جداگانه ایجاد کنید و داخل با استفاده از HTML و CSS یک فرم تهیه کنید و داخل دکمه ای برای تایید بگذارید ولی دیگه قابلیت تغییر در لحظه از شما گرفته میشود و یک صفحه اضافی باید لود کنید. (10 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .