Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 840
от 17.12.2007, 00:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 443, Экспертов: 41
В номере:Вопросов: 3, Ответов: 5


Вопрос № 113330: Здравствуйте уважаемые эксперты. Суть проблеммы следующая я не могу передать через функцию mysql_query() в базу данных русский текст. Например при попытке сделать следующий запрос: INSERT INTO news SET news_name='Статья1' mysql_err...
Вопрос № 113343: Как получить значение переменной, имя которой находится в другой переменной, например : Есть переменная $a = '$arr[ttt]'; Как получить значение $arr[ttt]? ...
Вопрос № 113447: Доброе время суток, возникла проблема: необходимо написать что-то вроде файлообменника, только предоставление файлов для скачки должно быть без прямого адреса к файлу. Реализовывал с помощью ЧПУ, но когда Опера открывает Transfer для скачки, путь к ...

Вопрос № 113.330
Здравствуйте уважаемые эксперты. Суть проблеммы следующая я не могу передать через функцию mysql_query() в базу данных русский текст. Например при попытке сделать следующий запрос:

INSERT INTO news SET news_name='Статья1'

mysql_error() выдает следующее:

Incorrect string value: 'xD1xF2xE0xF2xFCxFF...' for column 'name' at row 1

news_name имеет следующий тип:

news_name VARCHAR(255) CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL

Заранее спасибо.
Отправлен: 10.12.2007, 23:35
Вопрос задал: XeS (статус: 1-ый класс)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Hid
Здравствуйте, XeS!
на 100% не уверен, но попробуйте такой синтаксис:
$query_msg = "INSERT INTO news (news_name) values('Статья1')";
удачи!
Ответ отправил: Hid (статус: 2-ой класс)
Ответ отправлен: 11.12.2007, 08:03


Вопрос № 113.343
Как получить значение переменной, имя которой находится в другой переменной, например :
Есть переменная $a = '$arr[ttt]';
Как получить значение $arr[ttt]?
Отправлен: 11.12.2007, 03:39
Вопрос задал: Миленин Александр (статус: 8-ой класс)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Емельянов Данил Юрьевич
Здравствуйте, Миленин Александр!
Вообще для подобной операции используется $$, т.е.
$b="test";
$a="b";
echo $$a;
//Будет выведено значение test

---------
Жить хорошо, а хорошо жить еще лучше!
Ответ отправил: Емельянов Данил Юрьевич (статус: 4-ый класс)
Ответ отправлен: 11.12.2007, 05:55
Оценка за ответ: 5
Комментарий оценки:
Ваш пример из мануала я знаю и он прекрасно работает, но вот с массивами он не дружит(если $a="arr[ttt]"; , то echo $$a; вернёт пустое значение). Т.е. для моего случая не применим, но всё равно спасибо за ответ.

Отвечает: proger
Здравствуйте, Миленин Александр!
Чтобы использовать переменные переменные с массивами, вы должны разрешить про-блему неоднозначности. То есть, если вы записываете $$a[1], то разборщику необходимо знать, будете ли вы использовать $a[1] как переменную, или вы хотите использовать $$a как переменную, а затем как индекс [1] из этой переменной. Синтаксис для разрешения этой неоднозначности таков: ${$a[1]} для первого случая и ${$a}[1] - для второго.
Ответ отправил: proger (статус: 3-ий класс)
Ответ отправлен: 11.12.2007, 18:16
Оценка за ответ: 5
Комментарий оценки:
Как я написал в предыдущем ответе, я это знаю и пробовал; этот вариант не подходит(в вопросе я привёл пример данного мне массива) по простой причине - у меня не известно колличество и порядок индексов массив, поэтому его нельзя задать явно, как у вас в ответе.
Всё равно спасибо за ответ и участие.

Отвечает: HookEst
Здравствуйте, Миленин Александр!
Можно использовать eval:

$a = '$arr[ttt]';
echo eval("return $a;");
Ответ отправил: HookEst (статус: Студент)
Ответ отправлен: 12.12.2007, 12:45
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо за помощь и пример, это как раз то, что я искал! Незнаю, почему у меня не получалось, когда я пробовал eval, но ваш пример работает и подходит идеально.


Вопрос № 113.447
Доброе время суток, возникла проблема: необходимо написать что-то вроде файлообменника, только предоставление файлов для скачки должно быть без прямого адреса к файлу. Реализовывал с помощью ЧПУ, но когда Опера открывает Transfer для скачки, путь к файлу прямой. Можно как то программно подставить файл для закачки и чтобы пользователь(который качает файл) не видел его физического размещения.
Отправлен: 11.12.2007, 16:44
Вопрос задал: Жданин Сергей Васильевич (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Селев Валерий
Здравствуйте, Жданин Сергей Васильевич!

Общий смысл таков, чтобы отдавать запрашиваемый файл php-скриптом, а не позволить делать это веб-серверу.

Отдать файл можно при помощи функции readfile(), перед этим необходимо задать соттветствующие HTTP-headers, например:

Приложение:

Ответ отправил: Селев Валерий (статус: 6-ой класс)
Ответ отправлен: 11.12.2007, 16:55
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.65 от 04.12.2007
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное