Вернуться   Форум SAPE.RU > Общие вопросы > Разработка и сопровождение сайтов

-->
Ответ
 
Опции темы
Старый 11.10.2011, 21:39   #1
Мастер
 
Аватар для alexandrov_s
 
Регистрация: 14.05.2009
Сообщений: 552
Вес репутации: 206
alexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордится
По умолчанию Вопросы по PHP, MySQL...

Друзья, подскажите начинающему программисту следующие вопросы.

1. При добавлении данных в базу через формы не добавляются буквы "ш" и большое "И". Точнее добавляются, но потом выводится вот так " �? "
База в utf, php файлы в utf, что не так?

2. Есть два URL'а.
"site.ru/index.php" - для вывода всех записей.
"site.ru/index.php?user=vasya - для вывода записей васи.
Я делаю так
PHP код:
if $_GET['user']{
$q mysql_query ("SELECT * FROM test WHERE username = '$user' ORDER BY....
}else{
$q = mysql_query ("SELECT FROM test ORDER BY .... 
Это правильное решение, Или есть более красивое?

3. Есть таблица, где в каждой строке содержится id записи, имя пользователя и текст записи, причем у одного пользователя может быть несколько записей. Как, одним запросом, вывести список всех пользователей и количество записей каждого. Или лучше использовать вторую таблицу, для хранения юзеров и количества записей?

4. Никак не могу допереть, как работают регулярные выражения.
Напишите регулярку и объясните в кратце как вытащить "qwerty" из "abc qwerty xyz"

Спасибо заранее откликнувшимся!
Это еще не все вопросы.
Думаю тема будет полезна не только мне.

Прошу не превращать тему в холивар как прошлую.
alexandrov_s вне форума   Ответить с цитированием
Старый 11.10.2011, 21:56   #2
Добрый модератор
 
Аватар для zhegloff
 
Регистрация: 09.07.2007
Адрес: глобус Украины
Сообщений: 27,600
Вес репутации: 1026
zhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущееzhegloff - прекрасное будущее
По умолчанию

Цитата:
Сообщение от alexandrov_s Посмотреть сообщение
1. При добавлении данных в базу через формы не добавляются буквы "ш" и большое "И". Точнее добавляются, но потом выводится вот так " �? "
База в utf, php файлы в utf, что не так?
http://sqlinfo.ru/forum/viewtopic.php?id=2126
И еще 15000 результатов поиска в гугле.


Цитата:
Сообщение от alexandrov_s Посмотреть сообщение
2. Есть два URL'а.
"site.ru/index.php" - для вывода всех записей.
"site.ru/index.php?user=vasya - для вывода записей васи.
Я делаю так
Почитайте по поводу экранирования параметров. Так делать нельзя.


Цитата:
Сообщение от alexandrov_s Посмотреть сообщение
3. Есть таблица, где в каждой строке содержится id записи, имя пользователя и текст записи, причем у одного пользователя может быть несколько записей. Как, одним запросом, вывести список всех пользователей и количество записей каждого. Или лучше использовать вторую таблицу, для хранения юзеров и количества записей?
Пользователи отдельно, записи отдельно.


Цитата:
Сообщение от alexandrov_s Посмотреть сообщение

4. Никак не могу допереть, как работают регулярные выражения.
http://www.phpfaq.ru/regexp
__________________
Установка кода сапы от $9.95. Пишите в личку.
Правильный хостинг.
В личке бесплатно не отвечаю обычно.
zhegloff вне форума   Ответить с цитированием
Старый 12.10.2011, 13:12   #3
Мастер
 
Аватар для kakogohrena
 
Регистрация: 11.05.2011
Сообщений: 911
Вес репутации: 201
kakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущееkakogohrena - прекрасное будущее
По умолчанию

Цитата:
Сообщение от alexandrov_s Посмотреть сообщение

3. Есть таблица, где в каждой строке содержится id записи, имя пользователя и текст записи, причем у одного пользователя может быть несколько записей. Как, одним запросом, вывести список всех пользователей и количество записей каждого. Или лучше использовать вторую таблицу, для хранения юзеров и количества записей?
если таблица есть, я бы сделал это одним запросом:

SELECT sum(id записи),имя пользователя FROM таблица GROUP BY имя пользователя

Но это все неправильно, если хотите чтобы все работало быстро, вам надо 2 таблицы:
user_id,user_name

messedg_id,text,user_id

В запросе соединяете таблицы по ключу user_id, время выполнения запроса будет в сотни раз быстрее.
kakogohrena вне форума   Ответить с цитированием
Старый 09.11.2011, 14:02   #4
Специалист
 
Регистрация: 16.02.2009
Сообщений: 128
Вес репутации: 189
serdyuk скоро станет известен
По умолчанию

Всем привет! Чтобы не создавать новую тему, напишу вопрос здесь.
Суть такова:
Имеем файл c кодом:
Код:
<html>
<body>
<?php
  $data= mysql_fetch_array(mysql_query("SELECT a,b,c FROM table where id=5"));
  echo $data["a"];
  echo $data["b"];
  echo $data["c"];
?>
<img src="image.php">
</body>
</html>
image.php - генерирует изображение.

Вопрос: как в image.php передать значения $data["a"], $data["b"], $data["c"] ? Нужно чтобы изображение генерировалось с учетом данных, полученных ранее через запрос. Возможно ли передать данные в image.php при таком раскладе?
При подключении image.php через include проблема с передачей данных есс-но отпадает, но возникает проблема с заголовками, поскольку ранее уже выводятся другие данные. А без указания заголовка выводится не картинка, а ее бинарный код.
Как вариант, можно сначала записывать изображение на сервер, а потом отдавать его. Но такой вариант не нравится, поскольку тогда нужно содержать папку с chmod 777, а это вроде как не совсем безопасно. В общем, хотелось бы генерировать и отдавать изображение налету.
Буду признателен, если кто может подсказать решение.
__________________
Американский хостинг без ограничений. Ставь хоть сотню Wordpress. Помогу со скидкой.
serdyuk вне форума   Ответить с цитированием
Старый 09.11.2011, 14:22   #5
Мастер
 
Аватар для jekky25
 
Регистрация: 30.04.2008
Сообщений: 525
Вес репутации: 215
jekky25 - просто великолепная личностьjekky25 - просто великолепная личностьjekky25 - просто великолепная личностьjekky25 - просто великолепная личностьjekky25 - просто великолепная личностьjekky25 - просто великолепная личностьjekky25 - просто великолепная личность
По умолчанию

Цитата:
Сообщение от serdyuk Посмотреть сообщение
Всем привет! Чтобы не создавать новую тему, напишу вопрос здесь.
Суть такова:
Имеем файл c кодом:
Код:
<html>
<body>
<?php
  $data= mysql_fetch_array(mysql_query("SELECT a,b,c FROM table where id=5"));
  echo $data["a"];
  echo $data["b"];
  echo $data["c"];
?>
<img src="image.php">
</body>
</html>
image.php - генерирует изображение.

Вопрос: как в image.php передать значения $data["a"], $data["b"], $data["c"] ? Нужно чтобы изображение генерировалось с учетом данных, полученных ранее через запрос. Возможно ли передать данные в image.php при таком раскладе?
При подключении image.php через include проблема с передачей данных есс-но отпадает, но возникает проблема с заголовками, поскольку ранее уже выводятся другие данные. А без указания заголовка выводится не картинка, а ее бинарный код.
Как вариант, можно сначала записывать изображение на сервер, а потом отдавать его. Но такой вариант не нравится, поскольку тогда нужно содержать папку с chmod 777, а это вроде как не совсем безопасно. В общем, хотелось бы генерировать и отдавать изображение налету.
Буду признателен, если кто может подсказать решение.
Код:
<?php
  $data= mysql_fetch_array(mysql_query("SELECT a,b,c FROM table where id=5"));
  echo $data["a"];
  echo $data["b"];
  echo $data["c"];
?>
<img src="image.php?a=<?=$data["a"]?>&b=<?=$data["b"]?>&c=<?=$data["c"]?>">
</body>
</html>
jekky25 вне форума   Ответить с цитированием
Старый 09.11.2011, 14:34   #6
Специалист
 
Регистрация: 16.02.2009
Сообщений: 128
Вес репутации: 189
serdyuk скоро станет известен
По умолчанию

jekky25,
Работает!
Как же все просто оказалось...
Спасибо!
__________________
Американский хостинг без ограничений. Ставь хоть сотню Wordpress. Помогу со скидкой.
serdyuk вне форума   Ответить с цитированием
Старый 09.11.2011, 17:49   #7
телочка на авке клевая?
 
Аватар для 10012003
 
Регистрация: 14.09.2008
Адрес: Замкадье.
Сообщений: 1,522
Вес репутации: 263
10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее10012003 - прекрасное будущее
По умолчанию

Цитата:
Сообщение от alexandrov_s Посмотреть сообщение
Я делаю так
PHP код:
if $_GET['user']{
$q = mysql_query ("SELECT * FROM test WHERE username = '$user' ORDER BY....
}else{
$q = mysql_query ("SELECT * FROM test ORDER BY ....
Это правильное решение, Или есть более красивое?
толком не понял, но попробуйте так
if $_GET['user']{
$q = mysql_query ("SELECT * FROM test WHERE username = '$_GET[user]' ORDER BY....
}else{
$q = mysql_query ("SELECT * FROM test ORDER BY ....
10012003 вне форума   Ответить с цитированием
Старый 09.11.2011, 18:11   #8
Мастер
 
Аватар для alexandrov_s
 
Регистрация: 14.05.2009
Сообщений: 552
Вес репутации: 206
alexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордится
По умолчанию

Я уже разобрался, советы товарища Жеглова помогли. Всем спасибо.
Скоро будет следующая порция вопросов будет
alexandrov_s вне форума   Ответить с цитированием
Старый 10.11.2011, 00:44   #9
Мастер
 
Аватар для dgek1111
 
Регистрация: 10.10.2008
Адрес: Одесса Мама
Сообщений: 947
Вес репутации: 245
dgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущееdgek1111 - прекрасное будущее
По умолчанию

Цитата:
Сообщение от alexandrov_s Посмотреть сообщение
Я уже разобрался, советы товарища Жеглова помогли.
А совет не отправлять напрямую GET-параметр в SQL-запрос учли?
dgek1111 вне форума   Ответить с цитированием
Старый 10.11.2011, 10:15   #10
Мастер
 
Аватар для alexandrov_s
 
Регистрация: 14.05.2009
Сообщений: 552
Вес репутации: 206
alexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордитсяalexandrov_s - за этого человека можно гордится
По умолчанию

dgek1111, да... стараюсь учитывать
alexandrov_s вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
MySQL Jenya Курилка 24 23.09.2011 16:58
помогите с MySQL 10012003 Разработка и сопровождение сайтов 21 19.05.2009 12:22
PHP и MySql Eras_er Разработка и сопровождение сайтов 2 06.03.2009 16:50
Вопрос по mysql Hanapi Разработка и сопровождение сайтов 11 22.11.2008 22:05
Репликация в MySQL Kashey Разработка и сопровождение сайтов 1 20.10.2007 22:57


Часовой пояс GMT +3, время: 17:40.