Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите разобраться с IF [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
OrmaJever
Отправлено: 28 Ноября, 2010 - 13:21:00
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




$r5->fetch_assoc() заменить на mysqli_fetch_assoc($r5)


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
bom6epMAN
Отправлено: 28 Ноября, 2010 - 13:32:08
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Блин, ну никак не получается(((
Сделал так:
PHP:
скопировать код в буфер обмена
  1. $r5 = mysqli_query($mysqli,"SELECT PRI_PRICE, PRI_CURRENCY_CODE FROM PRICE WHERE PRI_ARTICLE_NR = '$ARTICLE' AND PRI_MANUFACT = '$BRAND'");
  2. while ($row5 = mysqli_fetch_assoc($r5)){
  3. $price = $row5['PRI_PRICE'];
  4. if (empty($price)) echo "<p>Обратитесь к менеджеру</p>";
  5. else echo "<p>".$row5['PRI_PRICE']." ".$row5['PRI_CURRENCY_CODE']."</p>";
  6. }


Цену выводит, а сообщение "обратитесь к менеджеру нет"
 
 Top
DlTA
Отправлено: 28 Ноября, 2010 - 13:35:12
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




а зачем $price?
 
 Top
bom6epMAN
Отправлено: 28 Ноября, 2010 - 13:42:16
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Сделал так:
PHP:
скопировать код в буфер обмена
  1.  
  2. $r5 = mysqli_query($mysqli,"SELECT PRI_PRICE, PRI_CURRENCY_CODE FROM PRICE WHERE PRI_ARTICLE_NR = '$ARTICLE' AND PRI_MANUFACT = '$BRAND'");
  3. while ($row5 = mysqli_fetch_assoc($r5)){
  4. if (empty($row5['PRI_PRICE'])) echo 'Обратитесь к менеджеру';
  5. else echo $row5['PRI_PRICE'], $row5['PRI_CURRENCY_CODE'];
  6. }


Без изменений(((
 
 Top
DlTA
Отправлено: 28 Ноября, 2010 - 13:54:35
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2952
Дата рег-ции: Окт. 2010  


Помог: 53 раз(а)




повторюсь
исправьте условие на
if (!(0+$row5['PRI_PRICE']))
 
 Top
OrmaJever
Отправлено: 28 Ноября, 2010 - 13:54:47
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




попрбуйте написать вот так
PHP:
скопировать код в буфер обмена
  1. $r5 = mysqli_query($mysqli,"SELECT PRI_PRICE, PRI_CURRENCY_CODE FROM PRICE WHERE PRI_ARTICLE_NR = '$ARTICLE' AND PRI_MANUFACT = '$BRAND'");
  2. while ($row5 = mysqli_fetch_assoc($r5)){
  3. var_dump($row5['PRI_PRICE']).' - '.var_dump($row5['PRI_CURRENCY_CODE']).'<br>';
  4. }

и напишите сюда что выведет


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
bom6epMAN
Отправлено: 28 Ноября, 2010 - 14:02:31
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




OrmaJever, вывело следующее:

string(4) "4,42" string(3) "EUR"
(Добавление)
Если вместо:
PHP:
скопировать код в буфер обмена
  1. if (empty($row5['PRI_PRICE'])) echo 'Обратитесь к менеджеру';
использовать:
PHP:
скопировать код в буфер обмена
  1. if (empty($row5['PRI_ARTICLE_NR'])) echo 'Обратитесь к менеджеру';
, то там, где должна быть цена выводит сообщение, а там где должно быть сообщение - пусто.
 
 Top
OrmaJever
Отправлено: 28 Ноября, 2010 - 14:29:21
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




bom6epMAN пишет:
OrmaJever, вывело следующее:
string(4) "4,42" string(3) "EUR"

Ну впринципе понятно.

PHP:
скопировать код в буфер обмена
  1. $r5 = mysqli_query($mysqli,"SELECT PRI_PRICE, PRI_CURRENCY_CODE FROM PRICE WHERE PRI_ARTICLE_NR = '$ARTICLE' AND PRI_MANUFACT = '$BRAND'");
  2. while ($row5 = mysqli_fetch_assoc($r5)){
  3. echo  (empty($row5['PRI_PRICE'])) ? 'Обратитесь к менеджеру' : $row5['PRI_PRICE'].' => ';
  4. echo $row5['PRI_CURRENCY_CODE'];
  5. }


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
bom6epMAN
Отправлено: 28 Ноября, 2010 - 15:20:56
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Господа, ничего не выходит((((
(Добавление)
А может ли дело быть в самом запросе?

PHP:
скопировать код в буфер обмена
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
  3. <head>
  4. <title>Детальная информация</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf8" />
  6.  
  7. <?
  8. ini_set('display_errors',1);
  9. error_reporting(E_ALL ^E_NOTICE);
  10.  
  11. require_once('./paging.inc2.php');
  12. require_once('./templates/Header3.html');
  13. $mysqli = new mysqli('localhost','avtotorg_admin','ed08b1ce','avtotorg_tekdok');
  14. $mysqli->set_charset('utf8');
  15.  
  16. $marka =intval($_GET['marka']);
  17. $model =intval($_GET['model']);
  18. $TYP_ID =intval($_GET['types']);
  19. $STR_ID = intval($_GET['id']);
  20.  
  21. $_PAGING = new Paging($mysqli);
  22. ?>
  23. </head>
  24.  
  25. <body>
  26. <?
  27. printf("<a href='tree.php?marka=$marka&model=$model&types=$TYP_ID'><p>Вернуться к выбору детали</p></a>");
  28. ?>
  29.  
  30. <table cellspacing="5" cellpadding="5" width="570px" border="1" bordercolor="#000" align="center">
  31. <thead>
  32. <tr>
  33.     <th width="100px"><nobr>Изображение</nobr></th>
  34.         <th width="100px"><nobr>Артикул</nobr></th>
  35.         <th width="270px"><nobr>Описание</nobr></th>
  36.         <th width="100px"><nobr>Цена</nobr></th>
  37. </tr>
  38. </thead>
  39. <?
  40. $r1 = $_PAGING->get_page("SELECT LA_ART_ID FROM LINK_GA_STR INNER JOIN LINK_LA_TYP ON LAT_TYP_ID = $TYP_ID AND LAT_GA_ID = LGS_GA_ID INNER JOIN LINK_ART ON LA_ID = LAT_LA_ID WHERE LGS_STR_ID = $STR_ID ORDER BY LA_ART_ID");
  41. while($row1 = $r1->fetch_assoc()){
  42. $ART_ID = $row1['LA_ART_ID'];
  43. ?>
  44. <tr>
  45. <td>
  46. <?
  47. $r2 = mysqli_query($mysqli,"SELECT CONCAT('images/', GRA_TAB_NR, '/', GRA_GRD_ID, '.', IF(LOWER(DOC_EXTENSION)='jp2', 'jpg', LOWER(DOC_EXTENSION))) AS PATH FROM LINK_GRA_ART INNER JOIN GRAPHICS ON GRA_ID = LGA_GRA_ID INNER JOIN DOC_TYPES ON DOC_TYPE = GRA_DOC_TYPE WHERE LGA_ART_ID = ".$row1['LA_ART_ID']." AND (GRA_LNG_ID = 16 OR GRA_LNG_ID = 255) AND GRA_DOC_TYPE <> 2");
  48. while($row2 = $r2->fetch_assoc()){
  49. echo"".$row2['PATH']."\n";
  50. }
  51. ?>
  52. </td><td>
  53. <?
  54. $r3 = mysqli_query($mysqli,"SELECT ART_ARTICLE_NR, SUP_BRAND, DES_TEXTS.TEX_TEXT AS ART_COMPLETE_DES_TEXT, DES_TEXTS2.TEX_TEXT AS ART_STATUS_TEXT FROM ARTICLES INNER JOIN DESIGNATIONS ON DESIGNATIONS.DES_ID = ART_COMPLETE_DES_ID INNER JOIN DES_TEXTS ON DES_TEXTS.TEX_ID = DESIGNATIONS.DES_TEX_ID INNER JOIN SUPPLIERS ON SUP_ID = ART_SUP_ID INNER JOIN ART_COUNTRY_SPECIFICS ON ACS_ART_ID = ART_ID INNER JOIN DESIGNATIONS AS DESIGNATIONS2 ON DESIGNATIONS2.DES_ID = ACS_KV_STATUS_DES_ID INNER JOIN DES_TEXTS AS DES_TEXTS2 ON DES_TEXTS2.TEX_ID = DESIGNATIONS2.DES_TEX_ID WHERE ART_ID = ".$row1['LA_ART_ID']." AND DESIGNATIONS.DES_LNG_ID = 16 AND DESIGNATIONS2.DES_LNG_ID = 16");
  55. while($row3 = $r3->fetch_assoc()){
  56. $ARTICLE = $row3['ART_ARTICLE_NR'];
  57. $BRAND = $row3['SUP_BRAND'];
  58. printf("<a href=primenimost.php?marka=$marka&model=$model&types=$TYP_ID&id=$STR_ID&article=$ART_ID>".$row3['ART_ARTICLE_NR']."</a>");
  59. echo "</td><td><p>".$row3['SUP_BRAND']."</p><p><b>".$row3['ART_COMPLETE_DES_TEXT']."</b></p>\n";
  60. }
  61. $r4 = mysqli_query($mysqli,"SELECT
  62.         DES_TEXTS.TEX_TEXT AS CRITERIA_DES_TEXT,
  63.         IFNULL(DES_TEXTS2.TEX_TEXT, ACR_VALUE) AS CRITERIA_VALUE_TEXT
  64. FROM
  65.                   ARTICLE_CRITERIA
  66.         LEFT JOIN DESIGNATIONS AS DESIGNATIONS2 ON DESIGNATIONS2.DES_ID = ACR_KV_DES_ID
  67.         LEFT JOIN DES_TEXTS AS DES_TEXTS2 ON DES_TEXTS2.TEX_ID = DESIGNATIONS2.DES_TEX_ID
  68.         LEFT JOIN CRITERIA ON CRI_ID = ACR_CRI_ID
  69.         LEFT JOIN DESIGNATIONS ON DESIGNATIONS.DES_ID = CRI_DES_ID
  70.         LEFT JOIN DES_TEXTS ON DES_TEXTS.TEX_ID = DESIGNATIONS.DES_TEX_ID
  71. WHERE
  72.         ACR_ART_ID = ".$row1['LA_ART_ID']." AND
  73.         (DESIGNATIONS.DES_LNG_ID IS NULL OR DESIGNATIONS.DES_LNG_ID = 16) AND
  74.         (DESIGNATIONS2.DES_LNG_ID IS NULL OR DESIGNATIONS2.DES_LNG_ID = 16)
  75. ");
  76. while($row4 = $r4->fetch_assoc()){
  77. echo "<p>".$row4['CRITERIA_DES_TEXT'].": ".$row4['CRITERIA_VALUE_TEXT']."</p>\n";
  78. }
  79. ?>
  80. </td><td>
  81. <?
  82. $r5 = mysqli_query($mysqli,"SELECT * FROM PRICE WHERE PRI_ARTICLE_NR = '$ARTICLE' AND PRI_MANUFACT = '$BRAND'");
  83. while ($row5 = mysqli_fetch_assoc($r5)){
  84. echo "<p>".$row5['PRI_PRICE']." ".$row5['PRI_CURRENCY_CODE']."</p>";
  85. }
  86. }
  87. ?>
  88. </td></tr>
  89. </table>
  90. <?
  91. echo "<p></p>";
  92. echo $_PAGING->get_result_text().' деталей';
  93. echo "<br>";
  94. echo 'Страницы: '.$_PAGING->get_prev_page_link().' '.$_PAGING->get_next_page_link().'<br/>';
  95. echo $_PAGING->get_page_links();
  96. ?>
  97. <? require_once('./templates/Footer.html'); ?>
  98. </body>
  99. </html>


Господа, можете глянуть код, кому не лень?
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB