مهمان عزیز خوش آمدید. ورود ثبت نام



صفحه‌ها (3):
امتیاز موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
کلمات کلیدی
جلوگیری از ثبت اطلاعات تکراری در دیتابیس

جلوگیری از ثبت اطلاعات تکراری در دیتابیس
سلام
از چه کدی میشه استفاده کرد که اطلاعات تکراری نشه وارد کرد در دیتابیس ؟
 


خدایــــــا هیچکس رو محتاج دیگری نکن
-------------------------------------------------------------------------------------------------------------
 
 
پاسخ
؟
اگه ستون Unique باشه نمیشه اون ستون تکراری باشه.


دعای خیر برای اعضای گروه مای بی‌بی فارسی را فراموش نکنید!تصویر: http://www.cdn.my-bb.ir/images/smilies-v6/lightbulb.gif

HeartHeart خیلی التماس دعا دارم... دعام کنید لطفا HeartHeart

اگر از گروه مای بی‌بی فارسی راضی هستید، پس لطفا آنرا حمایت کنید: حمایت می‌کنم
پاسخ
من از اسکریپت افزایش ادلیست یاهو استفاده میکنم حالا تغییرات دادم برای چیزی دیگه میخوام استفاده کنم 
دقبق من نفهمید چی چی باشه !
فایل sql

Yahoo-AddList.sql
کد پی‌اچ‌پی:
<input type="text" name="yahoo_id" id="name" title="کد استیکر (فقط عدد)" placeholder="کد استیکر (فقط عدد)" required="لطفا فیلد را پر نمایید"/> 

میشه به این کد php چیزی وارد کرد که برسی کنه در صورت تکراری بودن اخطار بده 
 
کد پی‌اچ‌پی:
<?php
            
if(isset($_GET['submit']) and $_GET['submit']==1){

               echo 
"<center class=\"reg-submit\">استیکر به لیست اضافه شد</center>";
            }elseif(isset(
$_GET['submit']) and $_GET['submit']==0){

                echo 
"<center class=\"reg-error\">متاسفانه مشخصات شما ثبت نشد، دوباره امتحان کنید</center>";

            }elseif(isset(
$_GET['captcha']) and $_GET['captcha']==0){

                echo 
"<center class=\"reg-error\">کد امنیتی وارد شده اشتباه می باشد</center>";

            }        
        
?>


خدایــــــا هیچکس رو محتاج دیگری نکن
-------------------------------------------------------------------------------------------------------------
 
 
پاسخ
این چه ربطی به مای بی‌بی داره که در بخش سوالات مای بی‌بی ایجادش کردید؟
پ.ن: انتقال داده شد.

شما باید یه کوئری بزنی با where چک کنی که قبلا وجود داشته یا نه.
اگه وجود داشته ارور بده و درغیراینصورت ادامه بده دیگه.

احتمالا اگه دارید این سیستم رو می‌نویسید باید در این حد در SQL اطلاعات داشته باشید دیگه (!)


دعای خیر برای اعضای گروه مای بی‌بی فارسی را فراموش نکنید!تصویر: http://www.cdn.my-bb.ir/images/smilies-v6/lightbulb.gif

HeartHeart خیلی التماس دعا دارم... دعام کنید لطفا HeartHeart

اگر از گروه مای بی‌بی فارسی راضی هستید، پس لطفا آنرا حمایت کنید: حمایت می‌کنم
پاسخ
خب طبق گفته شما ستون مورد نظر رو Unique کردم حالا هم ثبت نمیشه عبارت تکراری

حالا کسی میتونه کدی بهم بده که وارد کنم که اخطار بده تکراری هست برای کاربر ؟ چون در صورت تکراری بود یک صفحه سفید باز میشه با متن  Duplicate entry '1619' for key 'yahoo_id_2'

خیلی لازم دارم اگه میشه کمک کنید ....


خدایــــــا هیچکس رو محتاج دیگری نکن
-------------------------------------------------------------------------------------------------------------
 
 
پاسخ
کدهای قسمت insert.php
کد پی‌اچ‌پی:
<?php
session_start
();

$userCaptcha strtoupper($_POST['captcha']);
if(
$_SESSION['captcha'] == $userCaptcha){



include(
'config/config.php');
require_once 
'jdf.php';

if(isset(
$_POST['yahoo_id']) && isset($_POST['yahoo_name']) && isset($_POST['yahoo_city']))
{
    if(!isset(
$_POST['yahoo_face'])){
        
$_POST['yahoo_face']='facebook.com';
    }else{
        
$_POST['yahoo_face']='facebook.com/'.$_POST['yahoo_face'];
    }

    if(!isset(
$_POST['yahoo_twit'])){
        
$_POST['yahoo_twit']='twitter.com';
    }else{
        
$_POST['yahoo_twit']='twitter.com/'.$_POST['yahoo_twit'];
    }    
    
    if(!isset(
$_POST['yahoo_inst'])){
        
$_POST['yahoo_inst']='instagram.com';
    }else{
        
$_POST['yahoo_inst']='instagram.com/'.$_POST['yahoo_inst'];
    }
    
    if(!isset(
$_POST['yahoo_line'])){
        
$_POST['yahoo_line']='';
    }else{
        
$_POST['yahoo_line']=''.$_POST['yahoo_line'];
    }

    if(!isset(
$_POST['yahoo_kik'])){
        
$_POST['yahoo_kik']='';
    }else{
        
$_POST['yahoo_kik']=''.$_POST['yahoo_kik'];
    }

    if(!isset(
$_POST['yahoo_site'])){
        
$_POST['yahoo_site']='';
    }else{
        
$_POST['yahoo_site']=$_POST['yahoo_site'];
    }

    if(!isset(
$_POST['yahoo_about'])){
        
$_POST['yahoo_about']='';
    }else{
        
$_POST['yahoo_about']=''.$_POST['yahoo_about'];
    }    

    if(!isset(
$_POST['yahoo_sx'])){
        
$_POST['yahoo_sx']='';
    }else{
        
$_POST['yahoo_sx']=''.$_POST['yahoo_sx'];
    }    

    if(!isset(
$_POST['yahoo_year'])){
        
$_POST['yahoo_year']='';
    }else{
        
$_POST['yahoo_year']=''.$_POST['yahoo_year'];
    }        
    
    
    
    
$yahoo =mysql_real_escape_string($_POST['yahoo_id']) ;
    
$yahoo2 =mysql_real_escape_string($_POST['yahoo_name']) ;
    
$yahoo3 =mysql_real_escape_string($_POST['yahoo_city']) ;
    
$result mysql_query("INSERT `tbl_id` (`yahoo_id`,`yahoo_name`,`yahoo_city`,`yahoo_face`,`yahoo_twit`,`yahoo_inst`,`yahoo_line`,`yahoo_kik`,`yahoo_site`,`yahoo_about`,`yahoo_sx`,`yahoo_year`,`yahoo_date`,`yahoo_time`) VALUES ('$yahoo','$yahoo2','$yahoo3','".$_POST['yahoo_face']."','".$_POST['yahoo_twit']."','".$_POST['yahoo_inst']."','".$_POST['yahoo_line']."','".$_POST['yahoo_kik']."','".$_POST['yahoo_site']."','".$_POST['yahoo_about']."','".$_POST['yahoo_sx']."','".$_POST['yahoo_year']."','".jdate('Y/m/d')."','".jdate('H:i:s')."')") OR die(mysql_error());
    if(
$result){
        
header('Location:reg.php?submit=1');
    }
    else{
        
header('Location:reg.php?submit=0');

    }

}else{

    
header("Location:reg.php?error=1");
}
}else{
    
header("Location:reg.php?captcha=0");
}


?>


خدایــــــا هیچکس رو محتاج دیگری نکن
-------------------------------------------------------------------------------------------------------------
 
 
پاسخ
درود منم از همیم اسکریپت استفاده میکنم
کجاش باید Unique کنم ؟


تصویر: http://p4media.ir/banners/p4m.gif
پاسخ
جدول داخل phpadmin


خدایــــــا هیچکس رو محتاج دیگری نکن
-------------------------------------------------------------------------------------------------------------
 
 
پاسخ
لطفا از دیتابیس هم قرار بدید ک راحت تر بشه نظر داد برای کاربری اگر هست یونیک نباید بکنید# 
اینو پیدا کنید 
کد:
$result = mysql_query("INSERT `tbl_id` (`yahoo_id`,`yahoo_name`,`yahoo_city`,`yahoo_face`,`yahoo_twit`,`yahoo_inst`,`yahoo_line`,`yahoo_kik`,`yahoo_site`,`yahoo_about`,`yahoo_sx`,`yahoo_year`,`yahoo_date`,`yahoo_time`) VALUES ('$yahoo','$yahoo2','$yahoo3','".$_POST['yahoo_face']."','".$_POST['yahoo_twit']."','".$_POST['yahoo_inst']."','".$_POST['yahoo_line']."','".$_POST['yahoo_kik']."','".$_POST['yahoo_site']."','".$_POST['yahoo_about']."','".$_POST['yahoo_sx']."','".$_POST['yahoo_year']."','".jdate('Y/m/d')."','".jdate('H:i:s')."')") OR die(mysql_error());
if($result){
header('Location:reg.php?submit=1');
}
else{
header('Location:reg.php?submit=0');

}
عوض کنید با
کد پی‌اچ‌پی:
$check mysql_query("SELECT FROM users (username, password, email) WHERE username=$fusername");

if(
mysql_num_rows($check)>=1)
{
$result mysql_query("INSERT `tbl_id` (`yahoo_id`,`yahoo_name`,`yahoo_city`,`yahoo_face`,`yahoo_twit`,`yahoo_inst`,`yahoo_line`,`yahoo_kik`,`yahoo_site`,`yahoo_about`,`yahoo_sx`,`yahoo_year`,`yahoo_date`,`yahoo_time`) VALUES ('$yahoo','$yahoo2','$yahoo3','".$_POST['yahoo_face']."','".$_POST['yahoo_twit']."','".$_POST['yahoo_inst']."','".$_POST['yahoo_line']."','".$_POST['yahoo_kik']."','".$_POST['yahoo_site']."','".$_POST['yahoo_about']."','".$_POST['yahoo_sx']."','".$_POST['yahoo_year']."','".jdate('Y/m/d')."','".jdate('H:i:s')."')") OR die(mysql_error());
if(
$result){
header('Location:reg.php?submit=1');
}else{
header('Location:reg.php?submit=0');
}
}else
{
echo 
'تکراری است ';

فقط کد اس کیو ال متغیر چک رو باید عوض کنید من نمیدونسم چیو دقیق میخواید تکراری نباشه#
پاسخ
واس ما اینجوریاس
.
.کدهای insert.php​
.
کد:
<?php

session_start();

    $userCaptcha = strtoupper($_POST['captcha']);
    if($_SESSION['captcha'] == $userCaptcha)
    
    {include('config.php');
    if(isset($_POST['yahoo_id']))
    {$yahoo =mysql_real_escape_string($_POST['yahoo_id']) ;
    
    $result = mysql_query('INSERT `tbl_id` (`yahoo_id`) VALUES ("'.$yahoo.'")') OR die(mysql_error());
    if($result)
    
    {header('Location:index.php?submit=1');}
    
    else{ header('Location:index.php?submit=0');} }
    
    else{ header("Location:index.php?error=1"); } }
    
    else{ header("Location:index.php?captcha=0"); }

?>
.
Unique کردم...
وقتی یه آیدی تکراری وارد میشه پیام زیر میاد
Duplicate entry 'elahenaz636' for key 'yahoo_id'
.
.
توی کدهای زیر پیام ها رو نمایش میده
.
کدهای home.php (نمایش پیام)
.
کد:
        <?php
        
            if(isset($_GET['submit']) and $_GET['submit']==1)
            {echo "<center style=\"color:Green\">آیدی یاهو شما ثبت شد</center>";}
            
            elseif(isset($_GET['submit']) and $_GET['submit']==0)
            {echo "<center style=\"color:red\">متاسفانه آیدی یاهو شما ثبت نشد , دوباره امتحان کنید</center>";}
            
            elseif(isset($_GET['captcha']) and $_GET['captcha']==0)
            {echo "<center style=\"color:red\"> کد امنیتی وارد شده اشتباه می باشد  </center>";}
            
        ?>
 
لینک مرتبط: http://ymsg.p4media.ir


تصویر: http://p4media.ir/banners/p4m.gif
پاسخ
صفحه‌ها (3):


پرش به انجمن:


کاربران در حال بازدید این موضوع:

1 مهمان


درباره‌ی ما

گروه پشتیبانی فارسی مای بی بی My-BB.Ir در واپسین روزهای پاییز 1391 کار خود را در زمینه مای بی بی آغاز کرد. این گروه با توکل بر خدای منان و دانش فنی خود در تلاش است فعالیتی هرچند ناچیز در زمینه ارتقا و پشتیبانی مای بی بی انجام دهد.
تمامی حقوق برای وب‌سایت پشتیبانی فارسی مای بی‌بی (My-BB.Ir) محفوظ می‌باشد و هرگونه کپی‌برداری از آن شرعا حرام و قانونا غیرمجاز می‌باشد.
قدرت گرفته از مای بی‌بی - فارسی‌ساز: My-BB.Ir و IORA.Ir