2015-08-01 2 views
-1

У меня есть таблица партнеров, и мне нужно отправить ответ с помощью SMS. Поэтому моя таблица содержит фирменное название, город, мобильный и пинкод. Если кто-то отправляет мне пин-код через SMS, я хочу вернуться к клиенту с 2 или 3 записями (несколько). С помощью этого кода я могу отправить только одну запись.php как получить несколько записей и отобразить в запросе

$sql = "SELECT * FROM reg_dealer WHERE pincode = '$myvalue'"; 
$q = mysql_query($sql); 
$rows= mysql_num_rows($q); 
$res= mysql_fetch_array($q); 

$firm_name=$res['firm_name']; 
$city=$res['city']; 
$mobiledealer=$res['mobile']; 
$pincode=$res['pincode']; 

if($res['pincode']=='') 
{ 
$mobile = $_GET['mobile']; 
$reply_message = "Greeting. We will get back to you soon on the nearest Partner details."; 
$reply_message1 = urlencode($reply_message); 
mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Does Not Exist','$reply_message','$s')");//insert data in to table 
} 
// part 2 
else 
{ 
$mobile = $_GET['mobile']; 
$reply_message = "Greetings. Please find the nearest Partner - ".$firm_name.", ".$city.", +".$mobiledealer."."; 
$reply_message1 = urlencode($reply_message); 
mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Details Sent','$reply_message','$s')");//insert data in to table 
}  
+0

Если есть только одна запись с этой Pincode он будет возвращать только эту строку. –

+0

PHP mysql_ API устарел около 100 лет назад. Итак, давайте, примем участие в XXI веке. – Strawberry

+0

Не используйте mysql_ * сейчас. Используйте PDO или Mysqli. – Akshay

ответ

1

Использование во время цикла.

$sql = "SELECT * FROM reg_dealer WHERE pincode = '$myvalue'"; 
$q = mysql_query($sql); 
$rows= mysql_num_rows($q); 
while($res= mysql_fetch_array($q)) 
{ 

$firm_name=$res['firm_name']; 
$city=$res['city']; 
$mobiledealer=$res['mobile']; 
$pincode=$res['pincode']; 

if($res['pincode']=='') 
{ 
$mobile = $_GET['mobile']; 
$reply_message = "Greeting. We will get back to you soon on the nearest Partner details."; 
$reply_message1 = urlencode($reply_message); 
mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Does Not Exist','$reply_message','$s')");//insert data in to table 
} 
// part 2 
else 
{ 
$mobile = $_GET['mobile']; 
$reply_message = "Greetings. Please find the nearest Partner - ".$firm_name.", ".$city.", +".$mobiledealer."."; 
$reply_message1 = urlencode($reply_message); 
mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Details Sent','$reply_message','$s')");//insert data in to table 
} 
} 

Обновление с новым требованием:

$mobile = $_GET['mobile']; 
$sql = "SELECT * FROM reg_dealer WHERE pincode = '$myvalue'"; 
    $q = mysql_query($sql); 
    $rows= mysql_num_rows($q); 
    while($res= mysql_fetch_array($q)) 
    { 

    $firm_name=$res['firm_name']; 
    $city=$res['city']; 
    $mobiledealer=$res['mobile']; 
    $pincode=$res['pincode']; 

    if($res['pincode']=='') 
    { 
    $reply_message .= "Greeting. We will get back to you soon on the nearest Partner details."; 
    mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Does Not Exist','$reply_message','$s')");//insert data in to table 
    } 
    // part 2 
    else 
    { 
    $reply_message .= "Greetings. Please find the nearest Partner - ".$firm_name.", ".$city.", +".$mobiledealer."."; 
    mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Details Sent','$reply_message','$s')");//insert data in to table 
    } 
    } 
if (isset($reply_message) && $reply_message != '') 
{ 
    $reply_message1 = urlencode($reply_message); 

    if($res['pincode']=='') 
    { 
    mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Does Not Exist','$reply_message1','$s')");//insert data in to table 
    } 
    // part 2 
    else 
    { 
    mysql_query("INSERT INTO history(sender,message,datetime,datenew,code,status,reply_message,url)VALUES('$mobile','$message','$datetime','$datenew','$number','Dealer Details Sent','$reply_message1','$s')");//insert data in to table 
    } 
} 
+0

привет, Chayan, спасибо за вашу помощь, просто проверили код и получили несколько записей, но только я получаю ответ в нескольких сообщениях, есть ли способ, в котором я могу вставлять все записи в одном сообщении. –

+0

Да, просто соедините все сообщения и запустите окончательную операцию после завершения цикла. – Chayan

+0

Привет, Chayan, спасибо за поддержку, но было бы здорово, если бы вы помогли мне и с concat, я пробовал, но не повезло. я очень новичок в этом, очень ценят помощь –

0

Вы выборки только одну запись, потому что вы не используете какой-либо тип цикла для получения множества записей.

Использование во время цикла:

while($res= mysql_fetch_array($q)) 
{ 
    //put your below inside the loop 
}