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 :: динамический <select> марка авто - модель

 PHP.SU

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


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

> Описание: 500 Internal Server Error
imediasun2
Отправлено: 27 Января, 2013 - 13:14:12
Post Id


Гость


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


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




Почему возникает ошибка 500 Internal Server Error
Прокоментируйте пожалуйста как можно подробнее этот код, как переделать эти селекты чтобы появлялся еще инпут в котором будут по умолчанию зависимые данные от модели, спасибо большое за участие в вопросе
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. require_once($_SERVER['DOCUMENT_ROOT'].'/action/config.php');
  4. if(isset($_GET['marka'])){
  5.    $marka=$_SESSION['marka']=intval($_GET['marka']);
  6.    $res = sql('SELECT * FROM '.db_prefix.'model WHERE marka='.$marka.' ORDER by name');
  7.    /* todo if(mysql_num_rows($res)>1) */ echo '<option value=0 selected>Выберите модель</option>';
  8.     while($row = mysql_fetch_array($res))
  9.         echo "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>\n";
  10.    exit;    
  11. }elseif(isset($_GET['model'])){
  12.     $id_model=intval(param('model'));
  13.     $res = sql('SELECT * FROM '.db_prefix.'model WHERE id='.$id_model.' LIMIT 1');
  14.     if(!($row = mysql_fetch_array($res)))die;
  15.     $model=$row['name'];
  16.     $id_marka=intval($row['marka']);
  17.     $res = sql('SELECT * FROM '.db_prefix.'marka WHERE id='.$id_marka.' LIMIT 1');
  18.     if(!($row = mysql_fetch_array($res)))die;
  19.     $marka=$row['name'];
  20.     $product=intval($row['product']);
  21. }
  22.  
  23.  
  24. $script=@$_SERVER['SCRIPT_URL']; if(!$script)$script=@$_SERVER['REQUEST_URI'];
  25.  
  26. $_SESSION['marka']=$_SESSION['model']=0;
  27. $_SESSION['product']=1;
  28. ?>
  29.  


CODE (html):
скопировать код в буфер обмена
  1.  
  2. <table border="0" cellspacing="0" cellpadding="5" align="center">
  3. <td colspan="3" class="blank">
  4. <tr>
  5. <td id="markat">Марка ТС
  6. <td><select style="WIDTH: 200px; height:21" name="marka" id="marka" onLoad='this.focus = false;'
  7. onChange="getObj('model').disabled=''; ajaxLoad('model', '<?=$script?>?marka='+this.options[this.selectedIndex].value, '','','');">
  8.     <option value=0 selected>Выберите марку</option>
  9.  


PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $res = sql('SELECT * FROM '.db_prefix.'marka WHERE product=1 ORDER by name');
  4. while($row = mysql_fetch_array($res))
  5.    echo "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>\n";
  6. ?>
  7.  

CODE (html):
скопировать код в буфер обмена
  1.  
  2. </select>
  3. <tr>
  4. <td colspan="3" class="blank">
  5. <tr>
  6. <td id="modelt">Модель ТС
  7. <td><select style="WIDTH: 200px; height:21" name="model" id="model" <?=(@$marka?'':'disabled="disabled"') ?>  
  8. onChange="ajaxLoad('info', '<?=$script?>?model='+this.options[this.selectedIndex].value, '','','');" >
  9.     <option value selected disabled="disabled">Выберите модель</option>
  10. </select>
  11. </table>
  12.  
  13. <div id="info"></div>
  14.  

CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script language=JavaScript><!--
  3. function getObj(objID)
  4. {
  5.     if (document.getElementById) {return document.getElementById(objID);}
  6.     else if (document.all) {return document.all[objID];}
  7.     else if (document.layers) {return document.layers[objID];}
  8. }
  9.  
  10. function ajaxLoad(obj,url,defMessage,post,callback){
  11.   var ajaxObj;
  12.   if (defMessage) document.getElementById(obj).innerHTML=defMessage;
  13.   if(window.XMLHttpRequest){
  14.       ajaxObj = new XMLHttpRequest();
  15.   } else if(window.ActiveXObject){
  16.       ajaxObj = new ActiveXObject("Microsoft.XMLHTTP");  
  17.   } else {
  18.       return;
  19.   }
  20.   ajaxObj.open ((post?'POST':'GET'), url);
  21.   if (post&&ajaxObj.setRequestHeader)
  22.       ajaxObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=windows-1251;");
  23.  
  24.   ajaxObj.onreadystatechange = ajaxCallBack(obj,ajaxObj,(callback?callback:null));
  25.   ajaxObj.send(post);
  26.   return false;
  27.   }
  28. function updateObj(obj, data, bold, blink){
  29.    if(bold)data=data.bold();
  30.    if(blink)data=data.blink();
  31.    document.getElementById(obj).innerHTML = data; // упрощенный вариант, работает не во всех браузерах
  32.   }
  33. function ajaxCallBack(obj, ajaxObj, callback){
  34. return function(){
  35.     if(ajaxObj.readyState == 4){
  36.        if(callback) if(!callback(obj,ajaxObj))return;
  37.        if (ajaxObj.status==200)
  38.         updateObj(obj, ajaxObj.responseText);
  39.        else updateObj(obj, ajaxObj.status+' '+ajaxObj.statusText,1,1);
  40.     }
  41. }}
  42.  
  43. //--></script>
  44.  

config.php
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. <?PHP
  4. // указываем параметры для подключения к MySQL
  5. $host='v315803.freehost.com.ua'; // имя хоста
  6. $database='proflifter'; // имя базы данных
  7. $user='proflifter'; // заданное вами имя пользователя
  8. $pswd='proflifter'; // заданный вами пароль
  9. // подключаемся к MySQL
  10. $dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
  11. mysql_select_db($database) or die("Не могу подключиться к базе.");
  12.  
  13. define("db_prefix","pb_");
  14.  
  15. function sql($query) {
  16.     $res=mysql_query ( $query );
  17.     if(!$res)die("Запрос:\n".$query."\n");
  18.     return $res;
  19. }
  20. ?>
  21.  

(Отредактировано автором: 27 Января, 2013 - 13:26:01)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB