Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Открыть новую тему     Написать ответ в эту тему

werdikt

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Так я ж русский)))) и кто такой альтруист??? честно, не знаю )))

Всего записей: 12 | Зарегистр. 07-05-2008 | Отправлено: 15:00 02-06-2008
GRUZ222

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Проблемка с выводом изображения из бд вот пример кода:
 
<?
   require 'connect.php';  
     $query="SELECT * FROM table";  
$result=mysql_query($query);  
 
$data=array();  
   
while ($row = mysql_fetch_assoc($result))  
    $data[$row['id']]=$row;  
 ?>
 <?  
header("Content-type: image/gif");
echo $data[1]['img']
?>
 
Изображение выводиться в виде символов, по идее эта строка должна была мне помоч
...
header("Content-type: image/gif");
...
но браузер по прежнему выводит символы и ошибку:  
 
Warning: Cannot modify header information - headers already sent by...
 
в чём же проблема??

Всего записей: 22 | Зарегистр. 02-10-2007 | Отправлено: 16:36 22-06-2008 | Исправлено: GRUZ222, 16:40 22-06-2008
Brodyaga



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
На кой, простите, хрен, делать так:

Код:
 
?>
 <?
 

?? Во-первых это абсолютно идиотский ход, а во-вторых между двумя закрывающими тегами находится пробел, именно поэтому заголовки и не посылаются.

----------
Damn Metal

Всего записей: 2713 | Зарегистр. 07-01-2006 | Отправлено: 16:40 22-06-2008
GRUZ222

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Так как я новичёк в этом деле, конечно могут быть ошибки, именно поэтому я здесь и задал этот вопрос, так как хотел получить помощь от знающих людей. Именно для этого и существует форум! И вместо того, чтобы кричать какой я "идиот", можно было просто указать на ошибки и всё... Хотя я так и не пойму, что здесь идиотского и о каком пробеле идёт речь? Был бы очень благодарен, если бы кто-то показал, что именно не так...

Всего записей: 22 | Зарегистр. 02-10-2007 | Отправлено: 17:04 22-06-2008
Ternik



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GRUZ222
все довольно элементарно. Ты пишешь в файле, а в файле каждый символ это - символ. Ну вот собственно когда мы ставим символ новой строки (нажимаем энтер), в файле появляется символ, который говорит интерпретатору начать вывод. А заголовки после вывода, не печатаются. Проблемы нет на самом деле, ну ты пойми, бывают и плохие дни в жизни, может человек просто устал... но все же помог. Пусть и грубовато.

Всего записей: 763 | Зарегистр. 25-09-2002 | Отправлено: 17:16 22-06-2008
Brodyaga



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
GRUZ222
Я не говорил, что автор кода идиот. Я сказал, что такая запись отвратительна, и в ней собственно и кроется ошибка. Советую читать все так, как написано, а не так, как хочется подразумевать.
А суть ошибки Ternik уже разжевал.

----------
Damn Metal

Всего записей: 2713 | Зарегистр. 07-01-2006 | Отправлено: 17:27 22-06-2008
GRUZ222

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ternik
Я поудалял все лишние пробелы и энтеры заключил код в одинарные теги<?...?> и всё равно пишет ошибку, не могли бы вы пожалуйста на примере моего кода показать где именно должен находиться этот проклятый header и где же всётаки этот пробел, из-за которого заголовки не выводятся!!!
 
Добавлено:
<?php
    $db_host = "localhost";    
    $db_uname = "name";    
    $db_pass = "pass";    
    $db_name = "dbname";    
    $error_sql = "Ошибка в составлении запроса.";    
    $error_db = "Ошибка подключения к БД.";
    $msg_error_tabl = "Произошла ошибка в выборе таблицы.";
     
    @mysql_connect($db_host, $db_uname, $db_pass) or die($error_sql);
    @mysql_select_db($db_name) or die($error_db);    
     
    $imgResult = mysql_query("SELECT * FROM images WHERE id=1");
    $image = mysql_result($imgResult, 0, "images");
    header("Content-type: image/gif");
    echo $image;
?>
 
Вот нашел другой код, картина таже самая, хотя есть люди котрые утверждают, что он работает!! Вы хотите сказать, что и здесь ошибка? Я уже начинаю думать может это у меня Денвер "ругается"...

Всего записей: 22 | Зарегистр. 02-10-2007 | Отправлено: 17:51 22-06-2008 | Исправлено: GRUZ222, 17:53 22-06-2008
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GRUZ222

Цитата:
Warning: Cannot modify header information - headers already sent by...

полностью, плиз.. не нужно приводить часть предупреждения
 

Цитата:
Вы хотите сказать, что и здесь ошибка?

пробелы убрать перед <?php

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:53 22-06-2008
GRUZ222

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Спасибо огромное!!! заработало! Только есть одно "но", я даже и не догадывался, что картинку прийдёться вызывать таким методом <img src="img.php">, так как внутри <body> не работает и приходиться код пихать в отдельный файл!!! Я то думал, что можно будет выводить потом как обычную переменную в начале документа запрос а потом уже где удобно выводить - echo $image;. Или всё таки есть способ?    

Всего записей: 22 | Зарегистр. 02-10-2007 | Отправлено: 21:26 22-06-2008
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GRUZ222

Цитата:
Или всё таки есть способ?

нет.. один запрос в http - один content-type
 
поэтому и говорят - не нужно сохранять картинки в базу

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:28 22-06-2008 | Исправлено: Cheery, 21:34 22-06-2008
GRUZ222

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я понял) всем большое спасибо, вы действительно мне помогли!

Всего записей: 22 | Зарегистр. 02-10-2007 | Отправлено: 21:55 22-06-2008
uasash

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
где указать в mysql 5 количество сесий для одного пользователя

Всего записей: 48 | Зарегистр. 19-12-2005 | Отправлено: 11:51 27-06-2008
zerkms

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
 In MySQL 5.0, you can limit the following server resources for individual accounts:
 
    *
 
      The number of queries that an account can issue per hour
    *
 
      The number of updates that an account can issue per hour
    *
 
      The number of times an account can connect to the server per hour  

 
(c) http://dev.mysql.com/doc/refman/5.0/en/user-resources.html

----------
tvfёdor - оперативно уведомляет о раздачах rutracker | Блог об иммиграции в Новую Зеландию

Всего записей: 387 | Зарегистр. 07-05-2004 | Отправлено: 14:06 27-06-2008
kkRiz

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
поэтому и говорят - не нужно сохранять картинки в базу

Картинки можно прекрасно вытаскивать в ходе генерации страницы и рассовывать в base64 закодированную data. Это чаще всего не оправдано, и всё-же бывает полезно.
 
Ну, а в самой идеологии хранения изображений в базе, нет совершенно ничего плохого.

Всего записей: 206 | Зарегистр. 11-05-2006 | Отправлено: 17:09 27-06-2008
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kkRiz

Цитата:
Ну, а в самой идеологии хранения изображений в базе, нет совершенно ничего плохого.

кроме, опять же, лишней и ненужной нагрузки

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 18:48 27-06-2008
kkRiz

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
кроме, опять же, лишней и ненужной нагрузки

В том случае если таскать их оттуда при каждом запросе, что естественно жутко.
 
Хотя, у меня есть пример базы с 9,8 миллионами записей к которым содержится около 50 тысяч изображений, и ничего - летает вполне себе. (а клиенты при этом сосут данные исключительно через коннект к БД без потребности в поднятии ещё и веб\фтп сервера)

Всего записей: 206 | Зарегистр. 11-05-2006 | Отправлено: 23:36 27-06-2008
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kkRiz

Цитата:
Хотя, у меня есть пример базы с 9,8 миллионами записей к которым содержится около 50 тысяч изображений, и ничего - летает вполне себе.

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

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 01:24 28-06-2008
ak13boda



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Ну, а в самой идеологии хранения изображений в базе, нет совершенно ничего плохого.

Разве-что руками реализовать все фичи протокола, как то кеширование. Тогда действительно ничего плохого, если мощности MySQL сервера и канал связи позволяет.

Всего записей: 93 | Зарегистр. 23-11-2004 | Отправлено: 17:32 29-06-2008
kkRiz

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
Разве-что руками реализовать все фичи протокола, как то кеширование. Тогда действительно ничего плохого, если мощности MySQL сервера и канал связи позволяет.

Какого, простите, протокола?
Тем более Вы себе противоречите, при кешировании мощность базы и пропускная способность совершенно не важна.

Всего записей: 206 | Зарегистр. 11-05-2006 | Отправлено: 18:27 29-06-2008
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ak13boda
kkRiz
сюда
upload картинок в базу данных

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 18:30 29-06-2008
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru