За последние 24 часа нас посетили 18728 программистов и 1603 робота. Сейчас ищут 868 программистов ...

Меню

Тема в разделе "PHP и базы данных", создана пользователем rodion4657, 20 окт 2012.

  1. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    Люди подскажите, как сделать следующее.есть меню в одной ячейке таблицы
    Код (Text):
    1.        <td align="center" width="100">
    2.                          
    3.                          
    4.  <li class="last"><a href="php/perepiska.php">Переписка</a></li>
    5. <li><a href="php/bloknotes.php">Блокноты</a></li>
    6. <li><a href="php/documents.php">Документы</a></li>
    7.  
    8.                          
    9.                       </td>
    как сделать чтобы при нажатии на соответствующий пункт меню, содержимое соответствующего php файла выводилось в другой ячейке таблицы.при нажатии другого пункта меню, предыдущая информация исчезала и появлялась новая.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    jQuery, AJAX, onclick
    Код (Text):
    1.  jQuery.get("sootv.php", { param: "value" },
    2.    function(otvet){
    3.     $("#id-kuda-vivodit").html(otvet);
    4.    });
     
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    Без JS это делается через атрибут target
    Код (Text):
    1.  
    2. <a target="frame_name">blablabla</a>
    3. ...
    4. <iframe name="frame_name"></iframe>
    Пример:
    Код (Text):
    1.  
    2. <!DOCTYPE html>
    3. <html lang="ru">
    4. <head>
    5.     <meta charset="utf-8">
    6. </head>
    7. <table>
    8. <tr>
    9.     <td>
    10.         <a href="http://www.php.ru/forum/download/file.php?avatar=23761_1344142656.jpg" target="frame_id">Alfa</a><br/>
    11.         <a href="http://www.php.ru/forum/download/file.php?avatar=22934_1342548976.jpg" target="frame_id">Beta</a><br/>
    12.         <a href="http://www.php.ru/forum/download/file.php?avatar=38740_1349718913.jpg" target="frame_id">Gama</a><br/>
    13.     </td>
    14.     <td>
    15.         <iframe name="frame_id"></frame>
    16.     </td>
    17. </tr>
    18. </table>
    19. </body>
    20. </html>
     
  4. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    А если нужно при нажатии, на ссылку подключить соответствующий файл php в другой ячейке
    Код (Text):
    1. <td rowspan="2" align="center">  
    2.  
    3. <div style="overflow: scroll; height: 100%;">
    4.  
    5. <?php
    6.  
    7. include "php/perepiska.php"
    8. include "php/documents.php"
    9. include "php/bloknotes.php"
    10. ?>
    11. </div>
    12. </td>
    т.е. как бы как осуществить выбор между тем какой именно файл подключить, при нажатии определенной кнопки
     
  5. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    А jquery почему не хочешь?
     
  6. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    К моему стыду я с
    Код (Text):
    1. jquery
    вообще не знаком, мне бы какой - нибудь вариант попроще, лишь бы работало , чтобы при нажатии на пункты меню находящиеся в одной ячейке таблицы, подключались соответствующие php файлы, и результат этого подключения отображался в другой ячейке, есть еще какие -нибудь варианты?
     
  7. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    всё ясно. тебе сюда рано.
     
  8. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Знакомится надо с девушками, а jquery надо изучать. Если у тебя все наоборот, значить ты уже слишком долго за компом сидишь :)

    igordata расписал, что нужно, тебе осталось только скопировать и слегка дописать.
     
  9. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    Я вот сделал вот так
    Код (Text):
    1.  <td align="center" width="100">
    2.                        
    3.                          
    4.   <li><a href="menu.php?inc=perepiska" >Переписка</a></li>
    5.   <li><a href="menu.php?inc=technics">Техника</a></li>
    6.   <li><a href="menu.php?inc=documents">Документы</a></li>
    7.   <li><a href="menu.php?inc=bloknotes">Блокноты</a></li>
    8.  
    9.                          
    10.                       </td>
    Код (Text):
    1. <td rowspan="2" align="center">  
    2.  
    3. <div style="overflow: scroll; height: 100%;">
    4.  
    5. <?php
    6. if($_GET['inc']=="perepiska")
    7. include "php/perepiska.php";
    8. else
    9. if($_GET['inc']=='technics')
    10. {include  "php/technics.php";}
    11. else
    12. if($_GET['inc']=='documents')
    13. {include  "php/documents.php";}
    14. else
    15. if($_GET['inc']=='bloknotes')
    16. {include  "php/bloknotes.php";}
    17. ?>
    18. </div>
    19. </td>
    в каждом подключаемом php скрипте есть
    Код (Text):
    1. if (!isset($_GET["action"]))
    2.     $_GET["action"] = "showlist";
    3.  
    4. switch ($_GET["action"])
    5. {
    6.     case "showlist": // Список всех записей в таблице БД
    7.         show_list();
    8.         break;
    9.     case "addform": // Форма для добавления новой записи
    10.         get_add_item_form();
    11.         break;
    12.     case "searchform": // Форма для поиска
    13.         get_search_item_form();
    14.         break;
    15.     case "add": // Добавить новую запись в таблицу БД
    16.         add_item();
    17.         break;
    18.     case "editform": // Форма для редактирования записи
    19.         get_edit_item_form();
    20.         break;
    21.     case "update": // Обновить запись в таблице БД
    22.         update_item();
    23.         break;
    24.     case "delete": // Удалить запись в таблице БД
    25.         delete_item();
    26.         break;
    27.     case "search": // Поиск записей в таблице БД
    28.         search_item();
    29.         break;
    30.     default:
    31.         show_list();
    32. }
    и не один из case-ов не работает вот например операция "добавить"
    Код (Text):
    1. <?php echo '<p align="left"><a href="' . $_SERVER['PHP_SELF'] . '?action=addform">Добавить</a></p>';?>
    Код (Text):
    1. // Функция формирует форму для добавления записи в таблице БД
    2.      function get_add_item_form()
    3. {
    4.     echo '<h2>Добавить</h2>';
    5.     echo '<form name="addform" action="' . $_SERVER['PHP_SELF'] . '?action=add" method="POST">';
    6.        
    7.     echo '<table border=1>';
    8.     echo '<tr>';
    9.     echo '<td>Наименование документа:</td>';
    10.     echo '<td><input type="text" name="name" value="" /></td>';
    11.     echo '</tr>';
    12.     echo '<tr>';
    13.     echo '<td>Код документа:</td>';
    14.     echo '<td><input type="text" name="code" value="" /></td>';
    15.     echo '</tr>';
    16.     echo '<tr>';
    17.     echo '<td>Номер экземпляра:</td>';
    18.     echo '<td><input type="text" name="number_ekz" value=""/></td>';
    19.     echo '</tr>';
    20.     echo '<tr>';
    21.     echo '<td>Примечание:</td>';
    22.     echo '<td><input type="text" name="other" value=""/></td>';
    23.     echo '</tr>';
    24.     echo '<td colspan=2><input type="submit" value="Сохранить"></td>';
    25.     echo '<td><button type="button" onClick="history.back();">Отменить</button></td>';
    26.     echo '</tr>';
    27.     echo '</table>';
    28.     echo '</form>';
    29. }
    30.     function add_item()
    31. {
    32. if (!isset($_POST['addform']))
    33.     {
    34.     $doc = mysql_escape_string($_POST['name']);
    35.     $code = mysql_escape_string($_POST['code']);
    36.     $number_ekz = mysql_escape_string($_POST['number_ekz']);
    37.     $other = mysql_escape_string($_POST['other']);
    38.    
    39.      
    40.      if($doc=="Инструкция по безопасности")
    41.                $id_name_doc="1";
    42.      else
    43.      if($doc=="Организация связи")  
    44.                $id_name_doc="2";
    45.      else
    46.      if($doc=="Руководство по эксплуатации техники связи")
    47.                $id_name_doc="3";
    48.      else
    49.      echo "Наименование документа введено не корректно, повторите попытку";
    50. }
    51.  
    52. if ($doc == "" or $code == "" or $number_ekz == "" or $other=="" )
    53.  {
    54.      echo "Необходимо ввести имя - нажмите кнопку Назад и заполните форму еще раз";
    55.  exit;
    56.  }
    57.      $id_name_doc = addslashes($id_name_doc);
    58.      $code        = addslashes($code);
    59.      $number_ekz  = addslashes($number_ekz);
    60.      $other       = addslashes($other);
    61.      
    62.      $query = "INSERT INTO documents(id_name_doc, code, number_ekz,other)
    63.                VALUES ('".$id_name_doc."','".$code."','".$number_ekz ."','".$other ."')";
    64.     //mysql_query($query);
    65.     $res = mysql_query($query) or die("Запрос ошибочный");
    66.     //echo $query;
    67.    
    68.     header('Location: ' . $_SERVER['PHP_SELF']);
    69.     die(); 
    70.  
    71. }
    в чем причина?конфликт суперглобальных переменных? как устранить?
     
  10. sobachnik

    sobachnik Старожил

    С нами с:
    20 апр 2007
    Сообщения:
    3.380
    Симпатии:
    13
    Адрес:
    Дмитров, МО
    Присмотрись внимательней, какой тут адрес генерируется. Сдаётся мне, что в нём нету части ?inc=[perepiska|technics|documents|bloknotes] , соответственно, не инклудится файл с кейсами
     
  11. Gold Dragon

    Gold Dragon Активный пользователь

    С нами с:
    30 сен 2012
    Сообщения:
    306
    Симпатии:
    2
    Адрес:
    Тамбов
    иди сюда
    http://xhtml.co.il/ru/jQuery

    Проще и понятнее не видел в Сети. + подробное описание всего и на примерах. На сегодня уже практически ни один проект не обходится без jQuery
     
  12. rodion4657

    rodion4657 Активный пользователь

    С нами с:
    24 янв 2012
    Сообщения:
    135
    Симпатии:
    0
    Спасибо, действительно хороший сайт