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

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

  Все выпуски  

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


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

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

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

Выпуск № 964
от 02.06.2008, 06:05

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

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


Вопрос № 138046: Здравствуйте уважаемые эксперты, проблема вот в чем: Написал 2 функции одна для добавление новости и вторая для вывода новости Так вот проблема в том что когда я ставлю на страницу index.php <? require('func.ini.php'); add...
Вопрос № 138097: Здравствуйте дорогие эксперты вопрос такой: Есть функция для вывода новостей, как сделать так чтобы новости выводились по id? Заранее спасибо!...
Вопрос № 138135: Ув. эксперты! как подменить HTTP_REFERER?...

Вопрос № 138.046
Здравствуйте уважаемые эксперты, проблема вот в чем:
Написал 2 функции одна для добавление новости и вторая для вывода новости

Так вот проблема в том что когда я ставлю на страницу index.php
<?
require('func.ini.php');
add();
?>
То вываливается список ошибок:

Notice: Undefined index: title in T:homevirtualprimefunc.ini.php on line 22
Notice: Undefined index: autor in T:homevirtualprimefunc.ini.php on line 23
Notice: Undefined index: text in T:homevirtualprimefunc.ini.php on line 24
Notice: Undefined variable: autor in T:homevirtualprimefunc.ini.php on line 27
Notice: Undefined variable: autor in T:homevirtualprimefunc.ini.php on line 30

Что не не нравиться PHP я понять немогу *:)*

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

Приложение:

Отправлен: 27.05.2008, 11:29
Вопрос задал: Сурыев Назар (статус: 10-ый класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Иван Сергеевич
Здравствуйте, Сурыев Назар !

У Вас ошибки в объявлении имен полей ввода autor и text (перед ними знак доллара).
Далее, почему-то Вы присваиваете значение $_POST['autor'] переменной $keywords, а в скрипте проверяете $autor.
Вообще не стоит использовать значения переменных из глобальных массивов $_POST, $_GET и т.д. без проверки на их наличие (isset($_POST['test'])). Ведь первоначально Ваш скрипт запустится без каких-либо параметров.
Чтобы данные не добавлялись заново по нажатию F5 делайте редирект (например, на страницу с информацией об успешном добавлении данных): header('Location: good.php');
Ответ отправил: Иван Сергеевич (статус: Студент)
Ответ отправлен: 27.05.2008, 12:18
Оценка за ответ: 5
Комментарий оценки:
Спасибо большое я учту!!!

Отвечает: Николай Анатольевич
Здравствуйте, Сурыев Назар !
Проблема в то что на момент запуска скрипта, массив пост данных не имеет индекса 'title'.

Вобще при приеме данных от пользователя я использую такую конструкцию:

if(isset($_POST['title'])) $title=$_POST['title']; else $title='';

На нажатие кнопки, ну саммый простой метод, проверять данные перед вставкой. То есть если они уже есть, то не добовляем.

Ваш скрипт просто подарок для хакера)
Перед вставкой данных в базу достаточно функции mysql_real_escape_string
перед выводом данных из базы достаточно функции htmlspecialchars
А Вы используете их не по назначению.

$sql = mysql_query("SELECT * FROM news",$link);
Смею предположить что новостей у Вас в базе лежит не одна. Вы вытаскиваете их все. Накладно получаеться. На вашем месте я бы использовал "SELECT * FROM news LIMIT 1"

Вобщем вот так) Будут вопросы, стучитесь 330 500 621 С удовольствием отвечу на Ваши вопросы, и на вопросы которые возможно у Вас возникнут)
Ответ отправил: Николай Анатольевич (статус: 3-ий класс)
Ответ отправлен: 27.05.2008, 12:27
Оценка за ответ: 5
Комментарий оценки:
Огромное спасибо за Ваш ответ, Щас буду переделывать :)


Вопрос № 138.097
Здравствуйте дорогие эксперты вопрос такой:
Есть функция для вывода новостей, как сделать так чтобы новости выводились по id?
Заранее спасибо!

Приложение:

Отправлен: 27.05.2008, 16:12
Вопрос задал: Сурыев Назар (статус: 10-ый класс)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Миленин Александр
Здравствуйте, Сурыев Назар !
Следующий запрос вернёт новости только с заданным id :
SELECT * FROM `news` WHERE `id`='$id' LIMIT 1
Ответ отправил: Миленин Александр (статус: Студент)
Ответ отправлен: 27.05.2008, 18:07
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо!

Отвечает: Прим Палвер
Здравствуйте, Сурыев Назар !

select * from news order by ID desc limit 1
если нужен последний
если нужны несколько последних - единицу меняем на это число

Возможно, я тоже не понял вопроса.
Ответ отправил: Прим Палвер (статус: 2-ой класс)
Ответ отправлен: 27.05.2008, 19:02
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо!

Отвечает: Николай Анатольевич
Здравствуйте, Сурыев Назар !

Все в приложении. WHERE задает условие поиска. Через OR или AND можно указать дополнительные условия.

Приложение:

Ответ отправил: Николай Анатольевич (статус: 3-ий класс)
Ответ отправлен: 27.05.2008, 22:06
Оценка за ответ: 5
Комментарий оценки:
Большое спасибо!


Вопрос № 138.135
Ув. эксперты!

как подменить HTTP_REFERER?
Отправлен: 27.05.2008, 17:55
Вопрос задал: Топорков Алексей Иванович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Миленин Александр
Здравствуйте, Топорков Алексей Иванович!
В приложении запрос, отсылаемый браузером серверу, для замены $_SERVER['HTTP_REFERER'] достаточно заменить Referer: http://rusfaq.ru/info/Question/138134 на нужный вам и отправить серверу, например при помощи функции fsockopen.
Вот простейший пример её применения:

<?php
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno) ";
} else {
$out = "GET / HTTP/1.1 ";
$out .= "Host: www.example.com ";
$out .= "Connection: Close ";

fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}
?>

Приложение:

Ответ отправил: Миленин Александр (статус: Студент)
Ответ отправлен: 27.05.2008, 18:15


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

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

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

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

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

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


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


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале

∙ Версия системы: 4.92 pre 5.0 RC2 от 09.05.2008

Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное