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

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

  Все выпуски  

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


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

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

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

Выпуск № 903
от 24.02.2008, 23:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 452, Экспертов: 49
В номере:Вопросов: 8, Ответов: 18

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 123775: Здравствуйте эксперты. У меня следующая проблема: Необходимо через php вывести следующий код html - <tr> <td class="vbmainwindow" width="100%" valign="top"> <a href="."><img src=&qu...
Вопрос № 123784: Здравствуйте, уважаемые эксперты! Помогите ламеру пожалуйста! Ниже приведен код формы для получения данных о ползователей. Форма должна отправлять все данные о пользователе(ФИО, адрес, и т.д. а также рисунок). В этом я не могу разобратся: 1. ...
Вопрос № 123787: Здравствуйте, уважаемые эксперты! Помогите пожалуйста! Как можно сделать многоязыковый сайт, чтобы сам определил страну и язык пользователя и смотря на это отображаль соответствующую основную страницу. Например, если пользователь из США или из А...
Вопрос № 123788: Здравствуйте, уважаемые эксперты! Помогите пожалуйста! Как можно организовать личной кабинет пользователей на сайте? ...
Вопрос № 123790: Здравствуйте, уважаемые эксперты! Как можно сделать так чтобы при наведении курсора на определенную ссылку на строке состояния отображалась надпись "Следующая страница", а не типа "http://www.....com/next.php". Спасибо з...
Вопрос № 123798: Здравствуйте Уважаемые участники портала! У меня возникла такая проблема ... Работал с движком сайта и решил отключить старую базу данных и подключить новую что бы в дальнейшем работать с ней. но как только я изменил файл конфига. ...
Вопрос № 123885: Здравствуйте, уважаемые эксперты! Помогите пожалуйста! Где находятся временный файл с данными, который пришла с помощью формы методом POST?...
Вопрос № 123941: Здравствуйте, уважаемые эксперты! Как можно создать базу данных с полученными данными из формы сайта! Форма содержит поля: ФИО, адрес, и e-mail пользователей. И каждый раз когда зарегился новый пользователь приходил письмо на мой мейл ...

Вопрос № 123.775
Здравствуйте эксперты. У меня следующая проблема: Необходимо через php вывести следующий код html - <tr>
<td class="vbmainwindow" width="100%" valign="top">
<a href="."><img src="" alt="Картинки" style=""border:" 2px solid #00007B; height: 128px; width: 128px; margin: 8px"><a>
<a href=""><img src="./images/16.jpg" alt="Картинки" style=""border:" 2px solid #00007B; height: 128px; width: 128px; margin: 8px"><a>
<a href=""><img src="./images/18.jpg" alt="Картинки" style=""border:" 2px solid #00007B; height: 128px; width: 128px; margin: 8px"><a>
</td></tr>
Подскажите как это можно организовать.
Отправлен: 18.02.2008, 23:10
Вопрос задал: Котов Александр (статус: Посетитель)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: NewFL
Здравствуйте, Котов Александр!
Закрываешь выполнение PHP пример ?> Вставляешь html text открываешь php Пример:
...
echo $_POST['id'];
?>

.......

$Me=.....
Good LUCK!

Исправлена опечатка.
-----
∙ Отредактировал: Николай Владимирович / Н.В. (Профессионал)
∙ Дата редактирования: 18.02.2008, 23:54
Ответ отправил: NewFL (статус: Заблокирован)
Ответ отправлен: 18.02.2008, 23:15

Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Котов Александр!
Если вопрос состоит только в выводе, то код в приложении.
Просто нужно заключить весь текст в кавычки (двойные или одинарные) и выводить. Если какие-то символы совпадают с кавычками, то их нужно экранировать, т.е. перед ними нужно ставить знак обратного слэша - \.

Удачи!

Приложение:

Ответ отправил: Николай Владимирович / Н.В. (статус: Профессионал)
Россия, Москва
WWW: nvsoft.org
ICQ: 420720
----
Ответ отправлен: 18.02.2008, 23:22

Отвечает: Стас Тельнов/[анти]КИЛЛЕР
Здравствуйте, Котов Александр!
Для вывода на экран простого html кода целесообразнее всего использовать оператор "echo".
Сделать это очень просто!
Пишем в самом php файле:
<?php
echo '
Ваш html код......
';
?>
И на экран выведется именно этот html код.

Обратите внимание, что нужно заключить ваш код именно в одинарные кавычки, а не в двойные. При двойных кавычках будут учитываться спецсимволы (т.е. например, при выполнении echo"$peremennaa"; у вас на экране будет название переменной, а при выполнении кода echo'$peremennaa'; у вас выведется полностью то, что написано в одинарных кавычках). Ну и, соответственно, для вывода html кода лучше всегда использовать одинарные кавычки.
---------
Не стыдно не знать, стыдно не учиться
Ответ отправил: Стас Тельнов/[анти]КИЛЛЕР (статус: 5-ый класс)
Ответ отправлен: 18.02.2008, 23:26
Оценка за ответ: 5
Комментарий оценки:
Спасибо за ответ, моя ошибка была именно в двойных кавычках.

Отвечает: don Aleksandro
Здравствуйте, Котов Александр!
С помощью команды echo 'текст'
Ответ отправил: don Aleksandro (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 07:27

Отвечает: Yumark
Здравствуйте, Котов Александр!

Вставку html-кода в php можно реализовать двумя (основными) способами:
1) в том месте, куда надо вставить html-текст, пишем:
?>
вышеуказанный html-текст
<?

2) в том месте, куда надо вставить html-текст, пишем:
print "
вышеуказанный html-текст, но !!!! ПЕРЕД КАЖДОЙ " (двойной кавычкой) ставим
";
Ответ отправил: Yumark (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 08:45


Вопрос № 123.784
Здравствуйте, уважаемые эксперты! Помогите ламеру пожалуйста!
Ниже приведен код формы для получения данных о ползователей. Форма должна отправлять все данные о пользователе(ФИО, адрес, и т.д. а также рисунок). В этом я не могу разобратся:
1. Как можно отрабатывать данные формы и получать их в мою базы данных пользователей?
2. Как можно отобразить ФИО реферрера которое пригласил пользователя в этот сайт (в строке 4)?
3. Как можно загрузить рисунок пользователя в базу?

Приложение:

Отправлен: 18.02.2008, 23:47
Вопрос задал: Sherland (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 4)

Отвечает: PVS@Lviv
Здравствуйте, Sherland!
1)В зависимости от метода, которым форма посылает данные в PHP Вы получаете их в массиве $_GET или $_POST, и в любом случае в массиве $_REQUEST. Дальше - обрабатывайте, проверяйте корректность и пишите в базу.

2)Если база в MySQL, то приблизительно так:
$res=mysql_query("select f,i,o from my_users where user_id=$referrer");
$ref_name='';
if($row=mysql_fetch_row($res)){
$ref_name=$row[0].' '.$row[1].' '.$row[2];
};
echo "Вас пригласил $ref_name";

3)первоначально, после получения данных от формы, рисунок находится во временном файле. Вы можете просто скопировать этот файл куда-то, а в базу поместить путь к новому файлу, а можете сохранить весь рисунок. Для этого существуют BLOB-поля. Но в таком случае Вы получаете громадную базу данных и допольнительный код для доставания из неё картинки. И тем и другим Вы вряд-ли ускорите работу скрипта. Единственная выгода: при переносе базы перенесутся и картинки.
Ответ отправил: PVS@Lviv (статус: Специалист)
Ответ отправлен: 19.02.2008, 10:23
Оценка за ответ: 5
Комментарий оценки:
Здравствуйте, PVS@Lviv! Спасибо за ответ, Вы Очень помогли! Если можно еще вопрос: Где находятся временный файл с рисунком?


Вопрос № 123.787
Здравствуйте, уважаемые эксперты! Помогите пожалуйста!
Как можно сделать многоязыковый сайт, чтобы сам определил страну и язык пользователя и смотря на это отображаль соответствующую основную страницу. Например, если пользователь из США или из Англии отображался index.php на английском и т.д.
Спасибо заранее!
Отправлен: 18.02.2008, 23:54
Вопрос задал: Sherland (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: don Aleksandro
Здравствуйте, Sherland!
Вы уверены, что это вам нужно??? Если да, то файлы будут большого объёма. И сайт будт намного дольше грузиться. Не проще ли сделать просто новый сайт на другом языке или поддомен.
Также плюс к этому можно будет сделать редирект на сайт или поддомен с языком, характерным для той или иной страны.
Ответ отправил: don Aleksandro (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 07:32

Отвечает: PVS@Lviv
Здравствуйте, Sherland!
Самый простой вариант и 100% действующий вариант: спросить у пользователя на странице входа: "На каком языке желаете просмотреть наш сайт"

Посложнее: посмотреть (и обработать) что передал бровзер в $_SERVER["HTTP_ACCEPT_LANGUAGE"]. Но настройки бывают разные(например default'ные, ещё есть вариант чужого компа, когда настройки под себя не переделаешь) и потому возможность ручного выбора всё равно надо оставить.

и самый сложный, но почти с теми же оговорками, что и предыдущий: использовать базу GeoIP (привязка IP-адреса к стране/городу)
Ответ отправил: PVS@Lviv (статус: Специалист)
Ответ отправлен: 19.02.2008, 10:36

Отвечает: Товарищ Бородин
Здравствуйте, Sherland!
Для этого существует множество вариантов. Например, можно все слова и предложения сохранять в базе данных, и в зависимости от выбираемой версии сайта выдавать тот или иной перевод. Либо делать два сайта, и в зависимости от языка выполнять редирект на ту или иную версию.
Определить страну - вот тут уже придется основательно попотеть. Можно определять IP-адрес пользователя, делать на лету запрос на http://www.ripe.net/whois, "парсить" получаемые данные на предмет страны, которой принадлежит данный IP-адрес.
Поскольку Вы еще новичок, я Вам настоятельно советую сделать многоязычный сайт, на котором язык переключается вручную. Так проще все-таки. А потом можно подумать и о том, чтобы языки переключались в автоматическом режиме. Сначала надо знаний набраться побольше! Я Вам советую минимизировать затраты времени и сил и делать все по старинке - переключение вручную, без БД.
С уважением, Товарищ Бородин
---------
У нас своих волшебников полно, что превращают золото в г..но. © Л. Филатов
Ответ отправил: Товарищ Бородин (статус: Профессионал)
Россия, Новосибирск
Тел.: +7-923-245-3366
ICQ: 346988855
----
Ответ отправлен: 19.02.2008, 10:37
Оценка за ответ: 3
Комментарий оценки:
Здравствуйте, Товарищ Бородин! Спасибо за ответ! У меня есть скрипт который определяет страну пользователя с помощью IP. Я хотел узнать как можно переключить на другой язык! Но все таки спасибо!


Вопрос № 123.788
Здравствуйте, уважаемые эксперты! Помогите пожалуйста!
Как можно организовать личной кабинет пользователей на сайте?
Отправлен: 18.02.2008, 23:56
Вопрос задал: Sherland (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Товарищ Бородин
Здравствуйте, Sherland!
Организуйте личный кабинет по такому принципу:
1) в базе данных заведите таблицу с именами пользователей, паролями - со всеми данными, которые могут пригодиться и пользователям, и Вам (личный кабинет - не только удобство для пользователей, но и средство для владельца сайта узнать о своих пользователях побольше).
2) В начало каждой страницы поместите вызов функции session_start(). Если пользователь авторизован, значение переменной сеанса будет инициализировано. Тогда пользователю разрешается доступ в его кабинет.
3) А в кабинете пользователю должно быть разрешено оперировать своими данными (или например, поместить в личный кабинет какие-то функции, недоступные в неавторизованном режиме) по своему(или по-Вашему) усмотрению. Для этого нужно написать соответствующий интерфейс.
Это самый примитивный способ организации, так сказать, шаблон, на который можно накрутить все, что угодно. Можно, конечно, оставить и так. В приложении небольшой набросок кабинета, даже не кабинета, а его костяка. Сейчас таким образом уже мало кто пишет, потому что такую "защиту" легко обойти, но с этого начинается "кабинетостроение". Я такие программы писал на заре своего становления как PHP-программиста.
Надеюсь, что мой ответ Вам хотя бы немного помог. Удачи!
С уважением, Товарищ Бородин

Приложение:

---------
У нас своих волшебников полно, что превращают золото в г..но. © Л. Филатов

Ответ отправил: Товарищ Бородин (статус: Профессионал)
Россия, Новосибирск
Тел.: +7-923-245-3366
ICQ: 346988855
----
Ответ отправлен: 19.02.2008, 08:17
Оценка за ответ: 4
Комментарий оценки:
Спасибо Товарищ Бородин! Вы очень помогли!


Вопрос № 123.790
Здравствуйте, уважаемые эксперты!
Как можно сделать так чтобы при наведении курсора на определенную ссылку на строке состояния отображалась надпись "Следующая страница", а не типа "http://www.....com/next.php".
Спасибо заранее!
Отправлен: 19.02.2008, 00:08
Вопрос задал: Sherland (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Kruphi
Здравствуйте, Sherland!

Это вопрос не по PHP, а по Javascript: меняйте значение свойства window.status. Например:
<A HREF="Somepage.html" OnMouseover="window.status='Следующая страница';return true;" OnMouseout="window.status=' ';">Сссылка</A>

Детали см. http://webclass.polyn.kiae.su/classes/jsi/status.htm http://www.htmlite.com/JS017.php и в google (поиск для 'javascript statusbar')
Ответ отправил: Kruphi (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 00:25

Отвечает: Николай Владимирович / Н.В.
Здравствуйте, Sherland!
Посмотрите эту статью: Меняем строку состояния при наведении на ссылку мышкой
В ней подробно написано (в приложении копия ее части, необходимая Вам).

Удачи!

Приложение:

Ответ отправил: Николай Владимирович / Н.В. (статус: Профессионал)
Россия, Москва
WWW: nvsoft.org
ICQ: 420720
----
Ответ отправлен: 19.02.2008, 00:26
Оценка за ответ: 5
Комментарий оценки:
Спасибо огромное Николай Владимирович! Нашёл то что искал!!!!!!

Отвечает: don Aleksandro
Здравствуйте, Sherland!
Можно через javascript, но не думаю, что браузеры пропустят такое!
Ответ отправил: don Aleksandro (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 07:33

Отвечает: Yumark
Здравствуйте, Sherland!

Всё очень просто:
<a href=next.php title="Следующая страница">Куда ведёт ссылка (например: Следующая страница)</a>

т.е. в кавычках после ключевого слова title пишем ту фразу которая будет появляться при наведении курсора на ссылку.
Ответ отправил: Yumark (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 08:58
Оценка за ответ: 1
Комментарий оценки:
Здравствуйте, Yumark! Думаю Вы не очень поняли вопрос. Я имел виду строку состояние. Я уже получил ответ на этот вопрос.


Вопрос № 123.798
Здравствуйте Уважаемые участники портала!
У меня возникла такая проблема ...

Работал с движком сайта и решил отключить старую базу данных и подключить новую что бы в дальнейшем работать с ней.
но как только я изменил файл конфига. Скрипт перестал соединяться с базой данных вообще! не смотря на то что имя пользователя пароль и имя БД верны!
Попробовал вернуть старый конфиг скрипт не смог так же подключиться к БД на старом конфиге
посмотрел логи ошибок увидел там error: file is writable by others:
почитал в сети документацию об этой ошибке и попробовал убрать права 777 и поставить 644 такая же ситуация =(

Как мне исправить данную ошибку или я что то перепутал в скрипте соединения с базой данных !?

Заранее спасибо!

Приложение:

Отправлен: 19.02.2008, 03:46
Вопрос задал: Вацура Кирилл Андреевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: don Aleksandro
Здравствуйте, Вацура Кирилл Андреевич!
Простите, но с движками не работал и не собираюсь. Не нравится мне это! Вот мне лично больше по душе, когда всё сам прописал (или хотя бы разобрался в написанном не тобою).
Ещё раз простите, что не смог помочь!
Ответ отправил: don Aleksandro (статус: 3-ий класс)
Ответ отправлен: 19.02.2008, 07:45

Отвечает: Товарищ Бородин
Здравствуйте, Вацура Кирилл Андреевич!
Такое впечатление, что Вы напутали именно в скрипте что-то. Возможно, скрипт указывает не на правильную базу. Учитывайте, что имена переменных регистрозависимы.

Если Вы уверены, что все сделали правильно, давайте попробуем разобраться с ошибками в логах. Если движок не любит, чтобы конфиг был перезаписываем другими людьми, то исправление прав с 777 на 644 должно давать другую ошибку.

Что такое права 777? Это право на запись, чтение и выполнение скрипта. Что такое 644? Это право: для админа - запись+чтение, для всех остальных - только выполнение.

Если это для Вас не критично, сохраните конфиг, сделайте дамп базы данных, а потом переустановите скрипт.

Можете также зайти в базу под суперпользователем. Обычно у такого супертоварища логин root, а пароль пустой. Но это на локальных машинах, когда нет опасности атаки. Однако я не думаю, что проблема в базе данных, скорее, все-таки в скрипте.

Итак, попробуйте движок переустановить и последить за своими действиями пошагово. Если хотите поменять базу данных, переименуйте старую, и создайте клон базу данных с тем же именем, с каким когда-то была старая. Просто когда я прочитал Ваше "не смотря на то что имя пользователя пароль и имя БД верны!", я подумал, что может быть неверно само имя базы данных.

Еще у меня такое смутное подозрение, что Вы работаете с движком непосредственно на удаленном сервере. Не делайте так! Лучше скачайте себе пакет Денвер и испытывать движок станет значительно легче. Тем более, что недавно вышло обновление денвера - Денвер-3, которое по подбору ПО удовлетворит даже очень взыскательного пользователя.
С уважением, Товарищ Бородин
---------
У нас своих волшебников полно, что превращают золото в г..но. © Л. Филатов
Ответ отправил: Товарищ Бородин (статус: Профессионал)
Россия, Новосибирск
Тел.: +7-923-245-3366
ICQ: 346988855
----
Ответ отправлен: 19.02.2008, 08:38


Вопрос № 123.885
Здравствуйте, уважаемые эксперты! Помогите пожалуйста!
Где находятся временный файл с данными, который пришла с помощью формы методом POST?
Отправлен: 19.02.2008, 16:49
Вопрос задал: Sherland (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Миленин Александр
Здравствуйте, Sherland!
Если производится загрузка файла на сервер, то путь к временному файлу можно посмотреть в $_FILES['имя_инпута_в_форме']['tmp_name'],
если файл передаётся не один, то в $_FILES['имя_инпута_в_форме']['tmp_name'][0], $_FILES['имя_инпута_в_форме']['tmp_name'][1] и т.д.
Ответ отправил: Миленин Александр (статус: Студент)
Ответ отправлен: 19.02.2008, 16:58


Вопрос № 123.941
Здравствуйте, уважаемые эксперты!
Как можно создать базу данных с полученными данными из формы сайта! Форма содержит поля: ФИО, адрес, и e-mail пользователей.

И каждый раз когда зарегился новый пользователь приходил письмо на мой мейл с темой "Новый пользователь на сайте" с данными нового пользователя!

Спасибо за Ваши ответы и потраченные время заранее !!!

Приложение:

Отправлен: 19.02.2008, 21:54
Вопрос задал: Sherland (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Товарищ Бородин
Здравствуйте, Sherland!
Судя по формулировке вопроса, Вы не на верном пути. Из Вашего вопроса следует, что база данных должна создаваться при посыле формы скрипту-обработчику. Это неправильный путь. База данных должна создаваться один раз. Хотя бы потому, что большинство хостинг-провайдеров не позволяют пользователям иметь много баз данных.

При посыле формы должны вноситься в базу значения ее полей. Вот это будет действительно правильно.

Тогда следует создать подключение к базе данных, например, функцией mysql_connect($host, $user, $password), выбираем базу данных, с которой будем работать с помощью функции mysql_select_db($dbname). Затем выполняем запрос к базе данных следующего вида:

INSERT INTO `table`(`id`,`userSurname`,`userName`,`userMiddlename`,`userAddress`,`userMail`) VALUES ('','" . $_POST['userSurnameForm'] . "' , '". $_POST['userNameForm'] ."', '" . $_POST['userMiddleNameForm'] . "', '" . $_POST['userAddressForm'] . "', '" . $_POST['userMailForm'] . "'),
передав его функции mysql_query($query). Таблица table должна существовать, подставьте вместо имен полей, указанных в запросе, свои названия, если они отличаются.

Теперь про письмо на Ваш e-mail. Удобнее, если письмо будет приходить в том случае, если запись в базу данных добавилась. Проверить это легко. Когда пытаемся записать данные в БД, присваиваем вывод функции mysql_query переменной, назовем ее $peremennaya = mysql_query($query). Теперь проверяем, не равна ли она true:

if ($peremennaya) {
mail('Ваш e-mail адрес','Новый пользователь на сайте','Текст сообщения', 'Content-type: text/plain; charset=windows-1251;');
} else {
die('Вы не зарегистрированы!');
}

Таким образом, пользователь либо "отправит" Вам на почту письмо с уведомлением о его регистрации, либо получит сообщение о том, что зарегистрироваться ему не удалось.
С уважением, Товарищ Бородин
---------
У нас своих волшебников полно, что превращают золото в г..но. © Л. Филатов
Ответ отправил: Товарищ Бородин (статус: Профессионал)
Россия, Новосибирск
Тел.: +7-923-245-3366
ICQ: 346988855
----
Ответ отправлен: 19.02.2008, 22:18
Оценка за ответ: 5
Комментарий оценки:
Спасибо, Товарищ Бородин! Вы показалы верный путь!!!!


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

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

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

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

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

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


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


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

В избранное