• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
جستجو در چند جدول دیتابیس
#1
Exclamation 
با سلام و احترام خدمت اساتید عزیز.

بنده فرمی ساختم که به وسیله آن می خواهم درون چند یا کل جداول دیتابیس جستجو انجام بشه.ممنون میشم اگر کمکم کنید. Smile

کد:
            <form method="POST" action="">
                    <table class="table table-hover">
                        <tr>
                            <td>
                                <div class="form-group form-inline">
                                    <label for="name">نام مشتری : </label>
                            </td>
                            <td>
                                    <input type="text" id="name" name="name" class="form-control">
                            </td>
                                </div>    
                        </tr>        
                    </table>    
                <button type="submit" class="btn btn-success btn-lg btn-block">سرچ این مشتری</button>
            </form>

کد پی‌اچ‌پی:
<?php
    
require 'config.php';
        
$connect=mysql_connect(DB_HOSTDB_USERNAMEDB_PASSWORD) or die ('<h2 class="bg-danger text-center">خطا در اتصال به پايگاه داده</h2>' mysql_error());
        
$select=mysql_select_db(DB_NAME) or die('<h2 class="bg-danger text-center">خطا در انتخاب پايگاه داده</h2>' mysql_error());
        
mysql_query("SET NAMES 'utf8'"$connect);
        if(isset(
$_POST['name']) ){
        
$name htmlspecialchars($_POST['name']);
        
$query mysql_query("SELECT * FROM crm WHERE name LIKE '%$name%'",$connect) or die(mysql_error($connect));
        
$num_rowsmysql_num_rows($query);
        if(
$num_rows<1)
        {
        echo
'
        موردی یافت نشد
        '
;
         
        }else{
         
        while(
$row mysql_fetch_assoc($query)){
            echo
'        '.'
//نمایش اطلاعات
'
;
        }

    }

?>

دوستان خودم یک راه پیدا کردم :

کد پی‌اچ‌پی:
    $query mysql_query("SELECT * FROM crm WHERE
        name LIKE '%
$name%' OR
        melli LIKE '%
$name%' OR
        email LIKE '%
$name%' OR
        email2 LIKE '%
$name%' OR
        mobile LIKE '%
$name%' OR
        phone LIKE '%
$name%' OR
        name2 LIKE '%
$name%' OR
        mobile2 LIKE '%
$name%' OR
        website LIKE '%
$name%'
        "
,$connect) or die(mysql_error($connect)); 
  پاسخ
تشکر شده توسط :
#2
سلام دوست عزیز
شما میخوای توی کل جداول سرچ کنی یا توی کل ستونهای یک جدول

الان صورت سوالت با راه حلت متفاوت هست دقیقا مشخص کن کدوم رو میخوای

من فرض رو بر این میزارم که میخوای توی چندتا جدول و روی چندتا ستون سرچ کنی (اجتماعی از دوتا موضوع مطرح شده)

کد:
select * from table1 where match(col1, col2, col3) against ('some string')
union all
select * from table2 where match(col1, col2) against ('some string')
union all
select * from table3 where match(col1, col2, col3, col4) against ('some string')

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


پرش به انجمن:


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