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 :: довести код до ума

 PHP.SU

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


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

> Без описания
elmexanik
Отправлено: 05 Апреля, 2009 - 19:16:52
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2009  
Откуда: Иркутская обл. г. Тайшет


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




Всем доброго времени суток! Зашел на ваш форум и на мой взгляд он самый доброжелательный! Проблема в моем коде, он работает, но до ума его довести не могу. Нужно чтоб после удаления и добавления записи в базу форма обновилась сама, без задействия кнопки "весь список" и нужна возможность редактировать записи! Я еще зеленый в этом, прошу отнестись с пониманием!



CODE (text):
скопировать код в буфер обмена
  1. <?php
  2.      
  3.  $db = mysql_connect("localhost", "root");
  4.  mysql_select_db("krp", $db);
  5.   ?>
  6.         <?php
  7.         // проверяем наличие таблицы
  8.                 $otvet = mysql_query ("select * from RS;");
  9.                 if(!$otvet)
  10.                 echo("Tables are not exists!");
  11.      ?>
  12.  
  13. <!--Выводим содержимое таблицы -->
  14. <BODY bgcolor="Lightsteelblue" class = main>           
  15.     <form  method="post">
  16.     <input type="submit" name="show"   value="весь список"><br>
  17.     </form>
  18.      <?php
  19.     if ( isset($_POST['show']) ) {    
  20.        $otvet = mysql_query("select * from RS;");
  21.     if($otvet)
  22.     { echo ("<br> $dbname:");
  23.       // Определяем таблицу и заголовок
  24.       echo "<table border=2 BGCOLOR=snow align=center>";
  25.       echo "<tr><td>id</td><td>data</td><td>vrem</td><td>tip</td>
  26.           <td>neispr</td><td>mer</td><td>FIO</td></tr>";
  27.       // Так как запрос возвращает несколько строк, применяем цикл
  28.       while($rezultat = mysql_fetch_array($otvet))
  29.       {
  30.         echo "<tr><td>".$rezultat['id']."</td><td>".$rezultat['data']."</td>
  31.                 <td>".$rezultat['vrem']."</td><td>".$rezultat['tip']."</td>
  32.                 <td>".$rezultat['neispr']."</td><td>".$rezultat['mer']."</td><td>".$rezultat['FIO']."</td></tr>";
  33.       }
  34.       echo "</table>";
  35.     }
  36.     else
  37.     {
  38.       echo "<p><b>Error: ".mysql_error()."</b><p>";
  39.       exit();
  40.     } }
  41.     ?>
  42.  
  43.     <br>
  44.    
  45.     <form  method="post">
  46.               <br>
  47. id:     <input type="text"   name="delete" size="10"><br>
  48.  
  49.           <input type="submit" name="del"   value="удалить запись"><br>
  50. </form>
  51.     <?php
  52.     if ( isset($_POST['del']) ) {
  53.      
  54.   // Удаляем выбранную запись
  55.   $del="delete from RS where (id='".$_POST['delete']."')";
  56.   $resdel = mysql_query($del) or die ("Error: ".mysql_error ());
  57.   echo("удалено успешно");
  58. }
  59.  
  60. ?>
  61.     <br><br>
  62.     <!--Форма добавления -->    
  63. <form   method="post">
  64. <table border="0" align="left">
  65. <tr>
  66. <td> дата</td>
  67. <td> время</td>
  68. <td> тип РС</td>
  69. <td> неиспр-сть</td>
  70. <td> меры</td>
  71. <td> исполнитель</td>
  72. </tr>
  73. <tr>
  74. <td valign="top"><input name="data" type="text"size="10" /> </td>
  75. <td valign="top"><input name="vrem" type="text"size="10" /> </td>
  76. <td valign="top"><input name="tip" type="text"size="10" > </td>
  77. <td valign="top"><input name="neispr" type="text"size="10" > </td>
  78. <td valign="top"><input name="mer" type="text"size="10" ></td>
  79. <td valign="top"><input name="FIO" type="text"size="10" ></td>
  80.  <input type="submit" name="go"   value="добавить"><br>
  81.                   <input type="submit" name="reset" value="очистить "><br>  
  82. </tr>
  83. </table>
  84. </form>
  85.          
  86.     <!--Функция добавления -->
  87.  <?php
  88.     if ( isset($_POST['go']) ) {
  89.     $query = "INSERT INTO RS (id,data,vrem,tip,neispr,mer,FIO)
  90.         VALUES ('".$_POST['id']."','".$_POST['data']."', '".$_POST['vrem']."', '".$_POST['tip']."','".$_POST['neispr']."',
  91.         '".$_POST['mer']."','".$_POST['FIO']."')";
  92.     $result = mysql_query ($query)
  93. or die ("Error: ".mysql_error ());
  94. echo "запись успешно добавлена";
  95. }
  96.  
  97. ?>
  98.  
  99.    <body>  
  100. <form action="jur.php" method="POST">
  101. <input type=submit name = "gardemarin" value='на главную'>
  102. </form>  
  103.  </body>
  104. </html>

(Отредактировано автором: 05 Апреля, 2009 - 19:19:21)

 
 Top
chaynyk
Отправлено: 05 Апреля, 2009 - 23:12:38
Post Id



Гость


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


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




Во первых, у тебя аж четыре формы. сделай каждой свое имя.
PHP:
скопировать код в буфер обмена
  1.  
  2. <form method="post" name="name_from1">
  3. </form>
  4. if ( isset($_POST['name_from1']) ) // если метод пост этой формы
  5.  


-----
Чайник в PHP и SEO,http://fleshky[dot]ru
 
 Top
elmexanik
Отправлено: 06 Апреля, 2009 - 08:05:08
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2009  
Откуда: Иркутская обл. г. Тайшет


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




chaynyk пишет:
Во первых, у тебя аж четыре формы. сделай каждой свое имя.
PHP:
скопировать код в буфер обмена
  1.  
  2. <form method="post" name="name_from1">
  3. </form>
  4. if ( isset($_POST['name_from1']) ) // если метод пост этой формы
  5.  




Спасибо за ответ, все получилось Улыбка ! Может знаешь как лучше редактор сделать?
 
 Top
chaynyk
Отправлено: 06 Апреля, 2009 - 08:41:52
Post Id



Гость


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


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




Это админка или пользовательская часть?


-----
Чайник в PHP и SEO,http://fleshky[dot]ru
 
 Top
elmexanik
Отправлено: 06 Апреля, 2009 - 12:18:32
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2009  
Откуда: Иркутская обл. г. Тайшет


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




chaynyk пишет:
Это админка или пользовательская часть?


Вобще я пишу диплом,будут своегно рода "АРМ работника". Вход будет для троих пользователей с разными провами. Таблиц в базе будет 13. Сейчас работаю над админкой а потом возьмусь за доступ к базе и постраничным выводом! Работы еще много а время поджимае Однако ,вот поэтому я и обратился за помощью к форумчанам!
 
 Top
Stierus Супермодератор
Отправлено: 06 Апреля, 2009 - 13:46:17
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Про mysql_real_escape_string, smarty и htmlspecialchars почитать советую, посмотреть на fckeditor

(Отредактировано автором: 06 Апреля, 2009 - 13:46:38)

 
My status
 Top
chaynyk
Отправлено: 06 Апреля, 2009 - 14:11:36
Post Id



Гость


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


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




Ну, судя по тому что 13 таблиц, явно не пятиминутное дело.
Ни кто бесплатно не возьмется.
Мой совет, что не получается выкидывай на форум.
Второе, различие админки от пользовательской части.
В пользовательской части нужно писать защиту, как от sql-инъекций и от различных скриптов, если у пользователя, есть возможность добавлять какой нибудь текст в БД, который потом будет отображаться (что скорей всего).
Третье правильно спроектированная БД. что в конечном счете очень сильно будет влиять на работу способность.
Четвертое сделай отдельный файл для настройки БД.
PHP:
скопировать код в буфер обмена
  1.  
  2. require_once('con/config.inc'); // подключение настройки БД
  3.  

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


-----
Чайник в PHP и SEO,http://fleshky[dot]ru
 
 Top
elmexanik
Отправлено: 06 Апреля, 2009 - 19:07:52
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2009  
Откуда: Иркутская обл. г. Тайшет


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




chaynyk пишет:
Ну, судя по тому что 13 таблиц, явно не пятиминутное дело.
Ни кто бесплатно не возьмется.
Мой совет, что не получается выкидывай на форум.
Второе, различие админки от пользовательской части.
В пользовательской части нужно писать защиту, как от sql-инъекций и от различных скриптов, если у пользователя, есть возможность добавлять какой нибудь текст в БД, который потом будет отображаться (что скорей всего).
Третье правильно спроектированная БД. что в конечном счете очень сильно будет влиять на работу способность.
Четвертое сделай отдельный файл для настройки БД.
PHP:
скопировать код в буфер обмена
  1.  
  2. require_once('con/config.inc'); // подключение настройки БД
  3.  

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


Я все понимаю, что поделаешь, отступать некуда. Спасибо за советы Улыбка
 
 Top
Stierus Супермодератор
Отправлено: 07 Апреля, 2009 - 09:26:49
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




закажи что бы тебе написали - выйдет лучше и быстрее, хотя и дороже (я не возьмусь, советую с евгеном или чемпионом обсудить)
 
My status
 Top
elmexanik
Отправлено: 07 Апреля, 2009 - 09:53:03
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2009  
Откуда: Иркутская обл. г. Тайшет


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




Такой вопрос,при добавлении записи вставляется лишняя вторая запись,причем та,которую вставлял до этого. Тоже самое после простого обновления страници через браузер?


PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.     include ("connect.php");
  3.     ?>
  4. <!--Выводим содержимое таблицы -->
  5. <BODY bgcolor="Lightsteelblue" class = main>
  6.     <? $result = mysql_query("select * from alsn;");
  7.     if($result)
  8.     { echo ("<br> $dbname:");
  9.       // Определяем таблицу и заголовок
  10.       echo "<table border=2 BGCOLOR=snow align=center>";
  11.       echo "<tr><td>id_prov</td><td>дата</td><td>время</td><td>серия</td><td>номер</td>
  12.      <td>батарея</td><td>источник</td><td>пульсация</td><td>тип</td><td>ФИО</td></tr>";
  13.       // Так как запрос возвращает несколько строк, применяем цикл
  14.        }
  15.       while ($row = mysql_fetch_array($result))
  16.  {
  17.  echo "<tr>";
  18.  
  19.  echo "<td>".$row["id_prov"]."</td>";
  20.  echo "<td>".$row["data"]."</td>";
  21.  echo "<td>".$row["time"]."</td>";
  22.   echo "<td>".$row["ser"]."</td>";
  23.  echo "<td>".$row["nom"]."</td>";
  24.  echo "<td>".$row["bat"]."</td>";
  25.   echo "<td>".$row["ist"]."</td>";
  26.  echo "<td>".$row["puls"]."</td>";
  27.  echo "<td>".$row["tip"]."</td>";
  28.   echo "<td>".$row["fio"]."</td>";
  29.   }
  30.    echo "</table>";
  31. ?>
  32.  
  33.     <!--Форма добавления -->
  34. <form  method="post">
  35.               <br>
  36. <tr>
  37. <td valign="top"><input name="data" type="text"
  38. size="10" /></td>
  39. <td valign="top"><input name="time" type="text"
  40. size="10" > </td>
  41. <td valign="top"><input name="ser" type="text"
  42. size="10" > </td>
  43. <td valign="top"><input name="nom" type="text"
  44. size="10" > </td>
  45. <td valign="top"><input name="bat" type="text"
  46. size="10" > </td>
  47. <td valign="top"><input name="ist" type="text"
  48. size="10" /></td>
  49. <td valign="top"><input name="puls" type="text"
  50. size="10" > </td>
  51. <td valign="top"><input name="tip" type="text"
  52. size="10" > </td>
  53. <td valign="top"><input name="fio" type="text"
  54. size="10" > </td>
  55. <h1>
  56.           <input type="submit" name="go"   value="добавить">
  57. </h1>
  58.           <input type="submit" name="reset" value="очистить ">
  59.                  </td>
  60. </form>
  61.     <!--Форма добавления -->
  62.  
  63.     <!--Функция добавления -->
  64.  <?PHP
  65.     if ( isset($_POST['go']) ) {
  66.     $query = "INSERT INTO alsn (data,time, ser, nom, bat,ist, puls, tip, fio)
  67.         VALUES ('".$_POST['data']."', '".$_POST['time']."', '".$_POST['ser']."',
  68.  '".$_POST['nom']."', '".$_POST['bat']."', '".$_POST['ist']."','".$_POST['puls']."', '".$_POST['tip']."', '".$_POST['fio']."')";
  69.     $result = mysql_query ($query)
  70. or die ("Error: ".mysql_error ());
  71. echo "запись успешно добавлена";
  72. }
  73. ?>
  74.  
  75.  
 
 Top
Stierus Супермодератор
Отправлено: 07 Апреля, 2009 - 10:01:28
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Мельком пробежал по коду ... забавное решение. Сначала мы выводим таблицу, после этого мы вставляем новые данные (если нужно), но пользователь их не увидит, после чего решит, что они не вставились (что логично), введёт второй раз, у нас снова отработает скрипт, но на этот раз покажет пользователю его прошлую добавленную запись, после чего вставит новую (которую он повторно ввел), но снова не покажет пользователю.

Хотя нет, где-то далеко внизу таблицы, нам черным скромненьким тестом напишут, что запись добавлено Улыбка

ps
Да, скорее всего повторные данные вставляются при обновлении страницы (у вас нет ничего, предотвращающего это)
 
My status
 Top
elmexanik
Отправлено: 07 Апреля, 2009 - 10:10:22
Post Id



Новичок


Покинул форум
Сообщений всего: 19
Дата рег-ции: Апр. 2009  
Откуда: Иркутская обл. г. Тайшет


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




Stierus пишет:
Мельком пробежал по коду ... забавное решение. Сначала мы выводим таблицу, после этого мы вставляем новые данные (если нужно), но пользователь их не увидит, после чего решит, что они не вставились (что логично), введёт второй раз, у нас снова отработает скрипт, но на этот раз покажет пользователю его прошлую добавленную запись, после чего вставит новую (которую он повторно ввел), но снова не покажет пользователю.

Хотя нет, где-то далеко внизу таблицы, нам черным скромненьким тестом напишут, что запись добавлено Улыбка

ps
Да, скорее всего повторные данные вставляются при обновлении страницы (у вас нет ничего, предотвращающего это)


Нет нету, я многого еще не понимаю. Былобы хорошо если меня поправят на примере Улыбка
Ваш совет по поводу выполнения работы я принял к сведению! Я хоть и заочник, но все делал сам, но тут есть один фактор-это время с которым не поспоришь Хм
 
 Top
Stierus Супермодератор
Отправлено: 07 Апреля, 2009 - 10:22:53
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Вот и вот-то, чем больше времени вы оставите программисту - тем ниже будет цена и выше качество Улыбка А так сами будете пытаться до последнего, а потом сроки останутся, что и программисты не возьмутся. Вообще я много кому этот совет даю (меня уже за жадного еврюгу-разводилу скоро тут принимать начнут), это, действительно, дельный совет, к которому многие в конечном итоге приходят сами, зачастую поздно.
 
My status
 Top
chaynyk
Отправлено: 07 Апреля, 2009 - 10:41:49
Post Id



Гость


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


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




elmexanik Не понял вопрос.
И еще почему добавление происходит после отображение БД.
Логичней будет с начало добавить данные а потом отобразить.
Потом советую пользоваться префиксом '_once', он игнорирует повторную загрузку файла.
PHP:
скопировать код в буфер обмена
  1.    include_once ("connect.php");

(Добавление)
Stierus пишет:
Вот и вот-то, чем больше времени вы оставите программисту - тем ниже будет цена и выше качество Улыбка А так сами будете пытаться до последнего, а потом сроки останутся, что и программисты не возьмутся. Вообще я много кому этот совет даю (меня уже за жадного еврюгу-разводилу скоро тут принимать начнут), это, действительно, дельный совет, к которому многие в конечном итоге приходят сами, зачастую поздно.

какая то истина в этом есть.
Судя, что Вы подготовили БД с 13 таблицами. Даже у многих CMS их меньше, что в конечном счете после правильного проектирования их будет максимум пяток.


-----
Чайник в PHP и SEO,http://fleshky[dot]ru
 
 Top
Stierus Супермодератор
Отправлено: 07 Апреля, 2009 - 11:08:07
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Цитата:
Судя, что Вы подготовили БД с 13 таблицами. Даже у многих CMS их меньше, что в конечном счете после правильного проектирования их будет максимум пяток.
Что за бред ?Улыбка
 
My status
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB