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 :: Веб-сервер с нуля. [2]

 PHP.SU

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


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

> Описание: Создание веб-сервера на связке LAMP
m
Отправлено: 21 Февраля, 2008 - 11:31:23
Post Id


Новичок


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


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




RomAndry пишет:
не в консоли а в скрипте

По крайней мере, консоль показала, что скрипт вывода содержимого таблицы работает корректно. А вот
PHP:
скопировать код в буфер обмена
  1. $query = "INSERT INTO `file_database` VALUES ('file.jpg', 'JPEG', '1024')";

не помогло. Таблица все равно пуста.
 
 Top
RomAndry Администратор
Отправлено: 21 Февраля, 2008 - 11:47:11
Post Id



Частый посетитель


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


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




когда делаешь какие-то действия неплохо бы получать сообщения об ошибках
PHP:
скопировать код в буфер обмена
  1.  
  2. $query = "INSERT INTO `file_database` VALUES ('file.jpg', 'JPEG', '1024')";
  3. $result = mysql_query($query) or die(mysql_error());
  4.  

кстати я привел простой пример только для проверки
вполне возможно у тебя больше полей или меньше или типы полей другие
приведи сюда саму таблицу - будет быстрее понять и помочь тебе
 
My status
 Top
m
Отправлено: 21 Февраля, 2008 - 12:01:01
Post Id


Новичок


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


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




RomAndry, извиняюсь, дело было в моей невнимательности - форма загрузки index.html вызывала не тот upload.php Улыбка Вобщем, ручная запись в таблицу из скрипта работает. А как ее автоматизировать?
 
 Top
RomAndry Администратор
Отправлено: 21 Февраля, 2008 - 12:04:16
Post Id



Частый посетитель


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


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




Цитата:
А как ее автоматизировать?

у тебя есть действие при UPLOAD файла на сервер и вот если успешный он - делай INSERT в базу, используя массив $_FILES.
 
My status
 Top
m
Отправлено: 21 Февраля, 2008 - 12:50:55
Post Id


Новичок


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


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




RomAndry, попробовал так:
PHP:
скопировать код в буфер обмена
  1. $filename = $_FILES['uploadfile']['name'];
  2. $filetype = $_FILES['uploadfile']['type'];
  3. $filesize = $_FILES['uploadfile']['size'];
  4. $query = "insert into file_database (file_name, file_type, file_size) values ('$filename', '$filetype', '$filesize')";
  5.  

Работает. Но запись производится дважды, т.е. на один загруженный файл выходит две строки в таблице:

id name type size
3 modes.txt text/plain 81497
4 modes.txt text/plain 81497

В чем моя ошибка?
 
 Top
RomAndry Администратор
Отправлено: 21 Февраля, 2008 - 12:59:19
Post Id



Частый посетитель


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


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




значит где-то дважды вызывается INSERT
советую делать простейший дебаг - к примеру вываодит запросы в браузер что бы видеть что к чему и как
к примеру:
PHP:
скопировать код в буфер обмена
  1.  
  2. $query = "insert into file_database (file_name, file_type, file_size) values ('$filename', '$filetype', '$filesize')";
  3. echo '<LI>'.$query;
  4. $result = mysql_query($query) or die(mysql_error());
  5.  

сразу будет видно что в базу уходит.
 
My status
 Top
valenok
Отправлено: 21 Февраля, 2008 - 13:00:26
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


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




В том что код у вас почему то исполняется дважды.
В том куске который вы привели нет такой ошибки и быть не может.


-----
Truly yours, Sasha.
 
My status
 Top
m
Отправлено: 21 Февраля, 2008 - 13:25:33
Post Id


Новичок


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


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




Спасибо всем. Ошибка найдена и изничтожена. Теперь раздумываю как организовать поиск файлов на сервере. И как научиться их скачивать.
 
 Top
Eihwaz
Отправлено: 21 Февраля, 2008 - 13:47:48
Post Id


Гость


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


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




Поиск файлов (вы все-равно имя файла в бд храните):
PHP:
скопировать код в буфер обмена
  1.  
  2. echo '<table width="100%" cellspacing="0" cellpadding="0">';
  3. echo '<tr>';
  4. echo '<td>';
  5. echo 'Поиск';
  6. echo '</td>';
  7.  
  8. require_once('connection.php') // - в этом файле хранятся логин и
  9. // пасс к бд, и производится само подключение.
  10. if(isset($_POST['searchstring']))
  11. {
  12. $sql = "SELECT file_id, file_name FROM `tbl_files` WHERE file_name LIKE '%".$_POST['searchstring']."%'";
  13. $result = mysql_query($sql);
  14. while($row = mysql_fetch_array($result))
  15. {
  16. echo '<tr>';
  17. echo '<td>';
  18. echo $row['file_name'];
  19. echo "<a href=\"download.php?file_id=".$row['file_id']."\">Скачать файл</a>";
  20. echo '</td>';
  21. echo '</tr>';
  22. echo '<tr>';
  23. echo '<td>';
  24. echo 'Тут можно вывести описание';
  25. echo '</td>';
  26. echo '</tr>';
  27. }
  28. echo '<form method="post">';
  29. echo '<input type="text" name="searchstring" value="Введите имя файла">';
  30. echo '<input type="Submit" value="Понеслась моча по трубам!">';
  31. echo '</form>';
  32.  

Не тестировал, и могут быть ошибки, не спал сегодня Улыбка

(Отредактировано автором: 21 Февраля, 2008 - 13:57:18)

 
 Top
valenok
Отправлено: 21 Февраля, 2008 - 14:07:03
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


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




Создавайте новые темы для новых вопросов.


-----
Truly yours, Sasha.
 
My status
 Top
m
Отправлено: 21 Февраля, 2008 - 14:23:16
Post Id


Новичок


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


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




valenok, но ведь тема о создании веб-сервера с нуля. Соответственно, всплывающие по ходу дела вопросы, должны обсуждаться здесь. Конечно, если я этим нарушаю какие-то правила форума - прошу меня извинить. Впредь постараюсь не нарушать.
 
 Top
m
Отправлено: 22 Февраля, 2008 - 13:36:06
Post Id


Новичок


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


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




Пока не разобрался с поиском, возник еще вопрос, связанный с загрузкой файла на сервер.

Обнаружил проблему при загрузке файла с именем на кириллице. Прочитал статью о реализации скрипта транслита, но одну вещь не понял: как на ходу проверять на кириллице ли название файла?
 
 Top
Eihwaz
Отправлено: 22 Февраля, 2008 - 14:15:01
Post Id


Гость


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


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




При помощи регулярных выражений, в этом форуме есть много информации на эту тему.
 
 Top
m
Отправлено: 26 Февраля, 2008 - 08:41:57
Post Id


Новичок


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


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




Eihwaz, транслит сделал, спасибо за подсказку.

Касательно поиска: списал Ваш пример (попутно заметил пару пунктуационных ошибок). Попробовал:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/html/web-server/search. php on line 13

13-я строка это здесь:
 
 Top
RomAndry Администратор
Отправлено: 26 Февраля, 2008 - 08:53:40
Post Id



Частый посетитель


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


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




еще раз:
используйте отлов ошибок!
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. $result = mysql_query($sql) or die('опа! ашипка: '.mysql_error());
  4. ?>
  5.  

и так желательно со всеми mysql_*() функциями.
 
My status
 Top
Страниц (4): « 1 [2] 3 4 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB