[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: ResourceID #4 error помогите решить
smoke6969
Всем доброго времени суток, помогите пожалуйста решить проблему. Вот функция, которая должна выводить на экран данные поля question, где questID - это случайное число от 1 до 100. Собсно сначала выводила ResourceID #4, теперь и это перестала и просто показывает пустой экран:


function select()
{
$db = mysql_connect('localhost', 'root', '1') or
die ('Unable to connect. Check your connection parameters.');

mysql_select_db('quest', $db) or die (mysql_error($db));

$questID = rand(1, 100);

$query = "SELECT question FROM questions WHERE questID='$questID'";

$result = mysql_query($query, $db) or die(mysql_error($db));

echo $result;
}




Спустя 10 минут, 25 секунд (5.07.2010 - 15:15) Lenarfate написал(а):
правильно, выводит тебе ресурс.
во-первых, почитай про безопасность. у тебя сплошная дыра.
во-вторых, из данных, полученных из базы в переменную, нужно, так сказать, создать массив , в помощь функция mysql_fetch_assoc.
в-третьих, попахивает поповым (ударение в слове каждый ставит для себя сам laugh.gif )

Спустя 32 секунды (5.07.2010 - 15:16) linker написал(а):
function select()
{
if (!($db = mysql_connect('localhost', 'root', '1')))
die ('Unable to connect. Check your connection parameters.');
if (!mysql_select_db('quest', $db))
die('Unable to select database.');
$questID = rand(1, 100);
$query = "SELECT question FROM questions WHERE questID='$questID'";
$result = mysql_query($query, $db) or die(mysql_error($db));
if ($question = mysql_fetch_assoc($result))
echo $question['question'];
else
echo 'Nothing.';
}

Спустя 1 минута, 2 секунды (5.07.2010 - 15:17) Lenarfate написал(а):
linker
надо чтоб сам думал)

Спустя 3 минуты, 25 секунд (5.07.2010 - 15:20) Lenarfate написал(а):
и в-четвертых, никогда не пользуй rand(). корявая она

Спустя 3 минуты, 24 секунды (5.07.2010 - 15:24) linker написал(а):
Lenarfate, ну вот посмотрит, сравнит и поймет как оно надо. smile.gif

Спустя 5 минут, 13 секунд (5.07.2010 - 15:29) Basili4 написал(а):
linker
не не поймет начишся только когда сам сделаешь и ли прочтешь как надо делать

а судя по этому
$result = mysql_query($query, $db) or die(mysql_error($db));

echo $result; тут чиать и читать понимать и понимать зато радует одно

Что ест желание учится. Отсутствуют фундаментальные знания .

за ними я рекомендую обратится сюда http://irbis-team.com/15/1 очень все хорошо доступно написано

Спустя 10 минут, 25 секунд (5.07.2010 - 15:39) smoke6969 написал(а):
linker
люблю тебя, чувак, спасибо, все работает )
Lenarfate
1) Если не очень трудно, обьясни где именно дырявый скрипт? Это связано с коннектом к БД?
3) это не он, это я сам smile.gif
4) чем лучше заменить rand() ?


Спустя 10 минут, 36 секунд (5.07.2010 - 15:50) linker написал(а):
smoke6969, дырявость заключается в том, что происходит коннект к мускулу под юзверем root, да еще и с таким паролем. Конечно, нет вопросов, если это домашняя тачка.

Спустя 6 минут, 58 секунд (5.07.2010 - 15:57) Lenarfate написал(а):
нет, дырявость в запросе. держи учи http://phpforum.ru/index.php?showtopic=21213

Спустя 49 секунд (5.07.2010 - 15:58) Lenarfate написал(а):
ранд замени этим http://irbis-team.com/15/7/3там отличная функция

Спустя 1 минута, 4 секунды (5.07.2010 - 15:59) DedMorozzz написал(а):
дырка от здесь вот
Цитата
"SELECT question FROM questions WHERE questID='$questID'";
Никак не обрабатываются вводимые данные. Доверять юзерам никак нельзя. В данном случае надобно указать
"SELECT question FROM questions WHERE questID=".(int)$questID;
Если у тя конечно там именно АЙДИ. Иначе М_R_E_S

Спустя 16 минут, 58 секунд (5.07.2010 - 16:16) smoke6969 написал(а):
Спасибо, ребят, изменил кверик на

$query = "SELECT question FROM questions WHERE questID =" . (int)$questID;

Правда с рандомом не смог разобраться по предложенной статье sad.gif

Спустя 15 часов, 49 минут, 16 секунд (6.07.2010 - 08:05) linker написал(а):
$questID = rand(1, 100);
$query = "SELECT question FROM questions WHERE questID='$questID'";
Читайте код, в данном случае дыры, о которой вы говорите, нет. smile.gif

Спустя 5 минут, 35 секунд (6.07.2010 - 08:11) Basili4 написал(а):
Я не вижу смысла этих плясок с бубном в MySQL есть функция rand она может и не такая удобная как в пыхе но писать код пхп для того чтобы генерить 1 число если можно все сделать просто запросом по мне это излишне

Спустя 1 минута, 6 секунд (6.07.2010 - 08:12) linker написал(а):
Basili4, тысячу раз верно.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.