[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Проблема с занисением информации в mysql
Потрашитель
Вот код обработчика -

<?php
$user = "mesherjakov";
$password = "1234";
$mysql_db = "mesherjakoV";
$localhost = "localhost";
$db = mysql_connect($localhost,$user,$password);
$podkl = mysql_select_db($mysql_db,$db);
if(! $podkl) exit("Не удалось подключиться к mysql");

$comment = $_POST['comment'];
if(! $comment) exit("Вы не ввели коментарий!<br>Вернитесь назад!");
$mesherjakov = mysql_query("INSERT INTO comments (comment) VALUES ($comment)",$db);
if($mesherjakov == 'true')
{
echo "Комент отправлен успешно.";
}
else
{
echo "Комент не отправлен.";
}
?>




<html><body><script>

setInterval('window.location.href = "index.php"', 1000)

</
script></body></html>


Почему когда ввожу в форму текст,он не отправляет данные,а когда цыфры отправляет?

И ещё один вапрос: вот мой sql Запрос с другой странички -
mysql_query("SELECT comment FROM comments",$db);
как сделать чтобы не одна строка из бд выводилась,а все и сортировались чтобы по ID



Спустя 58 минут, 15 секунд (13.06.2011 - 00:31) allplayer написал(а):
Цитата (Потрашитель @ 12.06.2011 - 20:33)
И ещё один вапрос: вот мой sql Запрос с другой странички -
mysql_query("SELECT comment FROM comments",$db);
как сделать чтобы не одна строка из бд выводилась,а все и сортировались чтобы по ID



mysql_query("SELECT comment FROM comments ORDER BY id DESC");
$result = mysql_query($sql);// вытаскиваем из базы что нам надо в массиве
while($stih=mysql_fetch_array($result)) //Который используем тут
{
echo $stih[id].' - ';
echo $stih[name];
echo'<br />';
echo $stih[text];
echo'<br />';
}


DESC-сортировка в обратную сторону
Без DESC- просто сортировка.

Спустя 9 минут, 39 секунд (13.06.2011 - 00:41) Игорь_Vasinsky написал(а):
стиснув зубы....

Сразу привыкай к удобному выводу ошибок от мускула:

$db = mysql_connect($localhost,$user,$password) or die("Нет подключения к серверу: ".mysql_error());
);

$podkl = mysql_select_db($mysql_db) or die("Не могувыбрать базу: ".mysql_error());

Вот тут прикусил губу....
Цитата
if(! $podkl) exit("Не удалось подключиться к mysql");

Далее
Цитата
$comment = $_POST['comment'];

если юзер попадёт на страничку минуя форму - то выдет нотис, ознакомся с тернарным оператором:
$_POST['comment']) ? $_POST['comment'] : null;

потом:
Цитата
if(! $comment) exit("Вы не ввели коментарий!<br>Вернитесь назад!");

промолчу...
if($db)
{
if(empty($comment))
echo "Вы не ввели коментарий!<br><a href='#' onclick='history.back()'>Вернитесь назад</a>";
else
{
//Я бох я царь )))
$mesherjakov = mysql_query("INSERT INTO `comments` (`comment`) VALUES ('".mysql_escape_string($comment)."')") or die(mysl_error());
//стоит почитть про новую увиденную функцию и конкатенацию.
echo "Комент отправлен успешно.";
}
А по второму вопосу - для начала твоя таблица в БД должна содержать id auto_increment

Спустя 5 минут, 19 секунд (13.06.2011 - 00:46) inpost написал(а):
Потрашитель
Потому что значения не INT необходимо обрамлять одинарными кавычками.
Для вставки кода на форуме, используй [ php] теги, они в бб-кодах справа по центру.

Спустя 3 минуты, 46 секунд (13.06.2011 - 00:50) Игорь_Vasinsky написал(а):
Цитата
справа по центру
:Dзелёные, только красные biggrin.gif

Спустя 1 час, 12 минут, 43 секунды (13.06.2011 - 02:03) inpost написал(а):
Игорь_Vasinsky
Справа - правая часть панели. по центру, у нас 3 ряда, верхний, средний и нижний smile.gif Всё четко, координаты по XY

Спустя 2 часа, 38 минут, 6 секунд (13.06.2011 - 04:41) Игорь_Vasinsky написал(а):
ну лан..лан.

Спустя 16 часов, 2 минуты, 43 секунды (13.06.2011 - 20:44) Потрашитель написал(а):
Цитата
.mysql_error()
что значит эта функция?

Спустя 8 минут, 30 секунд (13.06.2011 - 20:52) Потрашитель написал(а):
Можете считать меня тупым,но я так и не понял ответ на первый вопрос!

Спустя 2 минуты, 14 секунд (13.06.2011 - 20:54) inpost написал(а):
Потрашитель
вывод ошибки в случае неудачи.

Спустя 42 секунды (13.06.2011 - 20:55) inpost написал(а):
Потрашитель
Потому что значения не INT необходимо обрамлять одинарными кавычками. - вот ответ smile.gif

Спустя 12 минут, 49 секунд (13.06.2011 - 21:08) Потрашитель написал(а):
изменил значение в базе на INT и все равно такая херь!

Спустя 7 минут, 11 секунд (13.06.2011 - 21:15) inpost написал(а):
Потрашитель
надо не на INT ставить, а кавычки одинарные...

Спустя 3 минуты, 27 секунд (13.06.2011 - 21:19) Потрашитель написал(а):
а в какой строчке?
<?php
$user = "mesherjakov";
$password = "123456";
$mysql_db = "mesherjakoV";
$localhost = "localhost";
$db = mysql_connect($localhost,$user,$password) or die("<p>Не удалось подключиться к бд</p>".mysql_error());
$podkl = mysql_select_db($mysql_db,$db) or die("<p>Не удалось подключиться к бд</p>".mysql_error());

$comment = $_POST['comment'];
if(! $comment) exit("Вы не ввели коментарий!<br>Вернитесь назад!");
$mesherjakov = mysql_query("INSERT INTO comments (comment) VALUES ($comment)",$db);
if($mesherjakov == 'true')
{
echo "Комент отправлен успешно.";
}
else
{
echo "Комент не отправлен.";
}
?>




<html><body><script>

setInterval('window.location.href = "index.php"', 1000)

</script></body></html>

Спустя 49 секунд (13.06.2011 - 21:19) inpost написал(а):
Потрашитель
Я тебе писал: Для вставки кода на форуме, используй [ php] теги, они в бб-кодах справа по центру.
Неужели трудно? или мне вечно за тобой бегать и вставлять это?

Спустя 4 минуты, 14 секунд (13.06.2011 - 21:24) Потрашитель написал(а):
Я не видал прост,что ты,inpost, писал

Спустя 2 минуты, 25 секунд (13.06.2011 - 21:26) Потрашитель написал(а):
блин не найду никак..можно ссылку?

Спустя 8 минут, 19 секунд (13.06.2011 - 21:34) inpost написал(а):
Потрашитель
Ну вот поэтому проблему ты не можешь решить, потому что не читаешь то, что тебе пишут...

Спустя 6 минут, 11 секунд (13.06.2011 - 21:41) inpost написал(а):
<?php
$user = "mesherjakov";
$password = "123456";
$mysql_db = "mesherjakoV";
$localhost = "localhost";

$db = mysql_connect($localhost,$user,$password) or die("<p>Не удалось подключиться к бд</p>".mysql_error());

$podkl = mysql_select_db($mysql_db,$db) or die("<p>Не удалось подключиться к бд</p>".mysql_error());

if(empty($_POST['comment'])) exit("Вы не ввели коментарий!<br>Вернитесь назад!");

$mesherjakov = mysql_query("
INSERT INTO `comments` SET
`comment` = '"
.mysql_real_escape_string($_POST['comment'])."'
"
) or die(mysql_error());
$info = "Комент отправлен успешно.";
?>

<html>
<
body>
<
script>
setInterval('window.location.href = "index.php"', 1000)
</
script>
<?php echo @$info; ?>
</body>
</
html>

Спустя 2 минуты, 44 секунды (13.06.2011 - 21:43) Потрашитель написал(а):
Спасибо большое,inpost!

Спустя 36 минут, 49 секунд (13.06.2011 - 22:20) linker написал(а):
inpost
$mesherjakov = mysql_query("
INSERT INTO `comments` SET
`comment` = '"
.mysql_real_escape_string($_POST['comment'])."'
"
) or die(mysql_error());
if (mysql_affected_rows())
$info = "Комент отправлен успешно.";
else
$info = "Комент не был отправлен.";


Спустя 36 минут, 35 секунд (13.06.2011 - 22:57) inpost написал(а):
linker
Вопрос, а по какой причине он может быть не добавлен, если в случае ошибки у нас всё равно выйдет DIE ?

Спустя 1 час, 38 минут, 12 секунд (14.06.2011 - 00:35) linker написал(а):
inpost
Да мало ли что бывает в жизни smile.gif
Быстрый ответ:

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