نمایش نتایج 1 تا 11 از 11

نام تاپیک: حذف همزمان چند رکورد با استفاده از chechbox

  1. #1

    Thumbs up حذف همزمان چند رکورد با استفاده از chechbox

    من می خوام چند رکورد انتخابی توسط checkbox از دیتا بیس بصورت همزمان حذف بشه ولی هر بار فقط اولین رکورد انتخابی سورت شده از بالا حذف میشه .
    متشکر میشم این کد رو چه جوری تصحیح کنم:
                  print  " <form action=' ' method='post' name='formdelete'> " ;  
    $query100="select * from news.allnews order by Date_News DESC" ;
    $result100=mysql_query($query100,$link) or die(mysql_error()."<br>".$query100);


    while($row=mysql_fetch_array($result100))
    {


    print " <input name='id[0]' type='checkbox' value='$row[0]' /> " ;
    print "$row[3]"."<br/>"."<hr/>" ;

    }
    if($_POST[deleteone]){

    $query101="select * from news.allnews order by Date_News DESC" ;
    $result101=mysql_query($query101,$link) or die(mysql_error()."<br>".$query101);
    while($row=mysql_fetch_array($result101))
    {

    if($id[0]=="$row[0]"){
    $query102="delete from news.allnews where ID_News_Title='$row[0]' " ;
    mysql_query($query102,$link) or die(mysql_error().$query102);
    }


    }

    }

    print " <br/>
    <input name='deleteone' type='submit' value='حذف خبر' /> " ;
    print "</form>" ;
    print "</div> " ;

  2. #2

    Lightbulb نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    اسم checkbox رو از
    id[0]
    به
    id[]
    تغيير بده
    تو روشي كه شما استفاده كردي تمام مقادير به يك متغير ارسال ميشه و هميشه مقدار آخر اضافه شده ديده ميشه و بقيه انگار اصلاً وجود ندارند
    ولي اگر به صورت
    id[]
    نام گذاري كني خودش خودكار هر كدوم رو تو يكي از خونه هاي آرايه اي با نام id ميريزه
    مثلاً اگر 5 تا checkbox بشه در صورت انتخاب همه سمت سرور با نامهاي زير به اونا دسترسي داري

    id[0]
    id[1]
    id[2]
    id[3]
    id[4]

  3. #3
    کاربر دائمی آواتار ahmadbadpey
    تاریخ عضویت
    مهر 1387
    محل زندگی
    homePage
    سن
    34
    پست
    299

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox


  4. #4
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    كرج
    پست
    180

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    شما اسم checkbox هاتون رو به صورت []id بزاريد و مقدار value اون checkbox رو هم برابر با مقدار متغير id بعد از اون طرف به صورت يك آرايه اين مقادير رو دريافت مي كنيد كه با دستوري شبيه به دستور زير مي تونيد ركوردهاي موردنظرتون رو پاك كنيد

    $query='delete from table_name where id in('.implode(',',$_POST['id']).')';
    mysql_query($query);

  5. #5

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    با تشکر فراوان از لطف وراهنمایی دوستان گرامی به خصوص
    من در ابتدا هم کد رو با
    [] id
    نوشته بودم ولی موقع تعریف با دستور if به مشکل برمی خوردم
    یعنی
    if(isset(id[]))
    اصولا کاری رو انجام نمیده یعنی حتی یک رکورد رو هم حذف نمی کنه.
    و از کد
    if(isset($id[]))
    هم error می گیره .
    به هر حال با راهنمایی همه دوستان ومقالات معرفی شده کدم رو به صورت زیر تغییر دادم ولی متاسفانه این هیچ رکوردی رو حذف نی کنه خیلی ممنون میشم اگه دوستان واساتید بگن مشکل کد کجاست ؟
     print  " <form action=' ' method='post' name='formdelete'> " ;  
    $query100="select * from news.allnews order by Date_News DESC" ;
    $result100=mysql_query($query100,$link) or die(mysql_error()."<br>".$query100);


    while($row=mysql_fetch_array($result100))
    {

    print " <input name='checkbox1[]' type='checkbox' value='$a[id]'/>" ;
    print "$row[3]"."<br/>"."<hr/>" ;
    }
    if($_POST[deleteone]){

    $query101="select * from news.allnews order by Date_News DESC" ;
    $result101=mysql_query($query101,$link) or die(mysql_error()."<br>".$query101);
    while($row=mysql_fetch_array($result101))
    {
    $a=$_POST['checkbox1'];
    if(isset($a)) {
    for($i=0;$i<count($a);$i++)
    if(is_numeric($a[$i]))
    {
    $query102="delete from news.allnews where ID_News_Title in ($ss)" ;
    mysql_query($query102,$link) or die(mysql_error().$query102);
    }

    }

    }

    }

    print " <br/>
    <input name='deleteone' type='submit' value='حذف خبر' /> " ;
    print "</form>" ;
    print "</div> "



  6. #6

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    البته یک خط جا افتاده که کد اصلی اینه :
       print  " <form action=' ' method='post' name='formdelete'> " ;  
    $query100="select * from news.allnews order by Date_News DESC" ;
    $result100=mysql_query($query100,$link) or die(mysql_error()."<br>".$query100);


    while($row=mysql_fetch_array($result100))
    {

    print " <input name='checkbox1[]' type='checkbox' value='$a[id]'/>" ;
    print "$row[3]"."<br/>"."<hr/>" ;
    }
    if($_POST[deleteone]){

    $query101="select * from news.allnews order by Date_News DESC" ;
    $result101=mysql_query($query101,$link) or die(mysql_error()."<br>".$query101);
    while($row=mysql_fetch_array($result101))
    {
    $a=$_POST['checkbox1'];
    if(isset($a)) {
    for($i=0;$i<count($a);$i++)
    if(is_numeric($a[$i]))
    {
    $ss=implode(',',$a);
    $query102="delete from news.allnews where ID_News_Title in ($ss)" ;
    mysql_query($query102,$link) or die(mysql_error().$query102);
    }

    }

    }

    }

    print " <br/>
    <input name='deleteone' type='submit' value='حذف خبر' /> " ;
    print "</form>" ;

  7. #7

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    به این صورت هم تصحیح کردم نشد : لطفا کمک کنید
     print  " <form action=' ' method='post' name='formdelete'> " ;  
    $query100="select * from news.allnews order by Date_News DESC" ;
    $result100=mysql_query($query100,$link) or die(mysql_error()."<br>".$query100);


    while($row=mysql_fetch_array($result100))
    {

    print " <input name='checkbox1[]' type='checkbox' value='$row[0]' />" ;
    print "$row[3]"."<br/>"."<hr/>" ;
    }
    if($_POST[deleteone]){

    $query101="select * from news.allnews order by Date_News DESC" ;
    $result101=mysql_query($query101,$link) or die(mysql_error()."<br>".$query101);
    while($row=mysql_fetch_array($result101))
    {
    $a=$_POST['checkbox1[]'];
    if(isset($a)) {
    for($i=0;$i<count($a);$i++)
    if(is_numeric($a[$i]))
    {
    # $ss=implode(',',$a);
    $ss=implode(',',$_POST['checkbox1']) ;
    $query102="delete from news.allnews where ID_News_Title in ($ss) " ;
    mysql_query($query102,$link) or die(mysql_error().$query102);
    }

    }

    }

    }

    print " <br/>
    <input name='deleteone' type='submit' value='حذف خبر' /> " ;
    print "</form>" ;

  8. #8

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    اینم کار نمی کنه .چیکار کنم من ؟؟؟

    print  " <form action=' ' method='post' name='formdelete'> " ;  
    $query100="select * from news.allnews order by Date_News DESC" ;
    $result100=mysql_query($query100,$link) or die(mysql_error()."<br>".$query100);


    while($row=mysql_fetch_array($result100))
    {

    print " <input name='checkbox1[]' type='checkbox' value='$row[0]' />" ;
    print "$row[3]"."<br/>"."<hr/>" ;
    }
    if($_POST[deleteone]){

    $query101="select * from news.allnews order by Date_News DESC" ;
    $result101=mysql_query($query101,$link) or die(mysql_error()."<br>".$query101);
    while($row=mysql_fetch_array($result101))
    {
    $row=$_POST['checkbox1[]'];
    if(isset($row)) {
    for($i=0;$i<count($row);$i++)
    if(is_numeric($row[$i]))
    {
    # $ss=implode(',',$a);
    $ss=implode(',',$_POST['checkbox1']) ;
    $query102="delete from news.allnews where ID_News_Title in ($ss) " ;
    mysql_query($query102,$link) or die(mysql_error().$query102);
    }

    }

    }

    }

  9. #9

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    خیلی ممنون از راهنمایی های دوستان بالاخره اینقد کد رو اینور اونورش کردم درست شد.اگر کمک شما دوستان نبود موفق به این کار نمی شدم باز هم ممنون.
    تشکر ویژه از
    alihoseini و payamsp و ahmadbadpey

  10. #10

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    این کدی که در زیر نوشتم درست کار می کنه ولی یک اشکال داره اونم اینه که پس از حذف تعداد دلخواهی رکورد در بار اولی که صفحه Refresh میشه همیشه اخرین رکورد رو حذف میکنه . نمی دونم علتش چیه؟؟؟
     print  " <form action=' ' method='post' name='formdelete'> " ;  
    $query100="select * from news.allnews order by Date_News DESC" ;
    $result100=mysql_query($query100,$link) or die(mysql_error()."<br>".$query100);

    while($row=mysql_fetch_array($result100))
    {

    print " <input name='checkbox1[]' type='checkbox' value='$row[0]' />" ;
    print "$row[3]"."<br/>"."<hr/>" ;
    }
    if($_POST[deleteone]){

    $query101="select * from news.allnews order by Date_News DESC" ;
    $result101=mysql_query($query101,$link) or die(mysql_error()."<br>".$query101);
    while($row=mysql_fetch_array($result101))
    {
    $row=$_POST['checkbox1'];
    if(isset($row)) {
    for($i=0;$i<count($row);$i++)
    if(is_numeric($row[$i]))
    {
    $ss=implode(',',$row) ;
    $query102="delete from news.allnews where ID_News_Title='$ss' " ;
    mysql_query($query102,$link) or die(mysql_error().$query102);
    }

    }

    }

    }

  11. #11

    نقل قول: حذف همزمان چند رکورد با استفاده از chechbox

    لطفا یکی از اساتید کمک کنه که این مشکلم هم برطرف بشه الان 2 روزه هر کاری می کنم نمیشه

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •