Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - ASP и VBScript

Страница: 1 |

 

  Вопрос: Потмогите оптмизировать код Добавлено: 26.11.08 09:02  

Автор вопроса:  Millenium | Web-сайт: www.aliyev.us | ICQ: 629966 
ПРимер мой на РНР


<? // polucenie peremennix i vipolnenie zaprosa
$query = "SELECT * FROM ". $dbtable ." WHERE ";
if (!empty($clientname)) { $query = $query . " clientname LIKE '%". $clientname ."%' "; }
if (!empty($passport))   {
if (!empty($clientname)) { $query = $query . " AND "; }
$query = $query . " passport = '". $passport . "' "; }
if ($branch_no!='all') {
if (!empty($clientname) OR !empty($passport)) { $query = $query . " AND "; }
$query = $query . " branch_no = '". $branch_no . "' "; }
if (!empty($add_date)) {
if (!empty($clientname) OR !empty($passport) OR ($branch_no!='all')) { $query = $query . " AND "; }
$query = $query . " add_date = '". $add_date . "' "; }
if (!empty($why_added)) {
if (!empty($clientname) OR !empty($passport) OR ($branch_no!='all') OR !empty($add_date)) { $query = $query . " AND "; }
$query = $query . " why_added LIKE '%". $why_added . "%' "; }
if (!empty($why_allow)) {
if (!empty($clientname) OR !empty($passport) OR ($branch_no!='all') OR !empty($add_date) OR !empty($why_added) ) { $query = $query . " AND "; }
$query = $query . " why_allow LIKE '%". $why_allow . "%' "; }

print ("<b>Запрос:</b> ". $query);

$query_res = mysql_query ($dbase, $query);
'Дальше, просто перебор массива от полученного результата (это ненадо)


Собсно выше указал кусочек кода который я писал на РНР.
Теперь вопрос в другом. Надо оптимизировать этот перебор, чтоб было быстро и с малым кодом.
Т.к. в будущем планируется сделать больше полей для запроса.

можно и For Each, но т.к. это Web Page Project, и у меня несколько таких полей, я незнаяю, можноли их в какой-то Frame впихнуть или как это сделать на ASP странице.

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 Алексей



black  admin

ICQ: 261779681 

Вопросов: 87
Ответов: 633
 Web-сайт: aleksey.nemiro.ru
 Профиль | | #1
Добавлено: 26.11.08 14:41
  1. $par = array("clientname" => "Вася", "passport" => "123");
  2. foreach ($par as $k => $v)
  3. {
  4.   if (strlen($v) > 0) $query. = " AND $k = '".str_ireplace("'", "\'", $v)."'"
  5. }

Ответить

Номер ответа: 2
Автор ответа:
 Millenium



ICQ: 629966 

Вопросов: 118
Ответов: 903
 Web-сайт: www.aliyev.us
 Профиль | | #2
Добавлено: 12.12.08 13:33
Спасибо!

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам