[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: проблема с занесением в БД
_Dimarik__
не получается занести в БД.
<?php
require_once("config.php");
mysql_query("INSERT INTO userlist VALUES(NULL, $objSurname->value,
$objName1->value, $objName2->value, $objPhone->value,
$objMail->value, 0);");
?>

дело в том что $objSurname->value, - это TINYTEXT, а он должен заключаться в одинарные кавычки. а вот только если я заключу в одинарные кавычки, вот так '$objSurname->value', у меня ошибка будет. есть ли функция, заключающая в кавычки или надо так же как и с двойными делать /'$objSurname->value/'
??????



Спустя 17 минут, 31 секунда (22.07.2010 - 20:47) inpost написал(а):
"INSERT INTO uselist SET
`obj2`=' ". $objName2->value ." '
");

Где: obj2 - ячейка таблицы!!!

Спустя 33 минуты, 16 секунд (22.07.2010 - 21:21) _Dimarik__ написал(а):
ой. а можно про это где-то подробнее прочитать? что-то непонятно((
что надо ввести в поисковике?

Спустя 15 минут, 39 секунд (22.07.2010 - 21:36) inpost написал(а):
Сейчас все распишу! Открываешь БД, видишь таблицу в виде:
id | title | text | img
Собственно, получаешь 3 переменных (в твоем случае это $objName1->value как класс, правильно?) и подставляешь их в таком порядке:
id в базе данных стоит автоинкремент, значит сам проставляется:
$result = mysql_query("INSERT INTO `userlist` SET
`title`=' "
. $title . " ',
`text`='"
.$text."',
`img`='"
.$img."'
"
,$db);


Спустя 23 минуты, 16 секунд (22.07.2010 - 22:00) _Dimarik__ написал(а):
ничего он туда не занёс. а можно как-то считать что отвечает MySQL, то есть какую ошибку выдаёт? какой функцией это можно сделать?

Спустя 1 час, 10 минут, 30 секунд (22.07.2010 - 23:10) Ice написал(а):
Попробуй экранировать и разобраться поплотнее, какие же еще параметры строковые, а следовательно требующие кавычки. Сдается мне, что не только сурнаме...
<?php
require_once("config.php");
mysql_query("INSERT INTO userlist VALUES(NULL, '{$objSurname->value}',
'{
$objName1->value}', '{$objName2->value}', $objPhone->value,
'{
$objMail->value}', 0);");
?>

Спустя 4 минуты, 16 секунд (22.07.2010 - 23:14) inpost написал(а):
У тебя в $db = mysql_connect("localhost","xxx","xxx"); ???
Ты правильно подставил параметры? Начни с малого, добавь сначала одни данные, открой phpmyadmin и проверь, добавились ли данные. Сделай легкую проверку:

$name = "URA";
$db = mysql_connect("localhost","nick","password");
mysql_select_db("BASE_NAME",$db);
$result = mysql_query("INSERT INTO `userlist` SET `name`='".$name."'",$db) or die('I cannot connect to db: ' . mysql_error());
if ($result == 'true') {echo "<p>Ваш код успешно добавлен!</p>";}
else {echo "<p>Ваш код не добавился!</p>";}

Сделай одни данные, потом добавь ещё и ещё... где-то ошибка именно в тебе

Спустя 1 час, 3 минуты, 50 секунд (23.07.2010 - 00:18) _Dimarik__ написал(а):
Ice , я сделал всё как ты мне сказал и у меня заработало!. и никакого конфликта с кавычками не было!

Спустя 5 минут, 33 секунды (23.07.2010 - 00:24) _Dimarik__ написал(а):
всё бы хорошо, но одно но! когда я после занесения в БД использую mysql_close(); у меня APACHE аварийно завершает работу. а эту функцию насколько я знаю надо использовать, потому что если будет одновременно много соединений с БД, она будет перегружена.
Но насколько я помню, она автоматически вызывается при завершении скрипта. как раз и получается что у меня mysql_close() идёт в самом конце. Может поээтому и вылетает апач потому что 2 раза закрывает соединение?

Спустя 1 час, 9 минут, 53 секунды (23.07.2010 - 01:34) Ice написал(а):
сотри ее вообще. Непостоянные соединения закрываются автоматически в конце работы скрипта.

Спустя 9 часов, 2 минуты, 16 секунд (23.07.2010 - 10:36) _Dimarik__ написал(а):
спасибо!

Спустя 39 минут, 13 секунд (23.07.2010 - 11:15) inpost написал(а):
Тебе надо было в твоём стиле, и чтоб сам не думал? Вот тебе то, про что я говорил, и пытался от тебя дождаться ответа:
<?phprequire_once("config.php");
mysql_query("INSERT INTO userlist VALUES
(NULL, '"
.$objSurname->value."', '".$objName1->value."', '".$objName2->value."', '".$objPhone->value."', '".$objMail->value."', 0);");?>

В данной ситуации они равноценны, что запись: ".$name." , или {$name}

Спустя 1 час, 15 минут, 28 секунд (23.07.2010 - 12:31) _Dimarik__ написал(а):
mysql_query("INSERT INTO userlist VALUE (NULL,'$objSurname->value', 
'
$objName1->value', '$objName2->value', '$objPhone->value',
'
$objMail->value', '$objVkontakte->value', 0);")
or die('Ошибка. Невозможно зарегестрироваться. Попробуйте позже.');

echo "<br>";
//определение id
$id = mysql_query("SELECT MAX(id) FROM userlist;")or die('Ошибка. Невозможно зарегестрироваться. Попробуйте поздже.');
echo $id;

нужно определить максимальный id. я написал: $id = mysql_query("SELECT MAX(id) FROM userlist;")or die('Ошибка. Невозможно зарегестрироваться. Попробуйте поздже.');
в результате у меня постоянно пишет Resource id #12.
И ещё, проблема с кодировкой. русские символы не воспринимаются. я выбрал вот этой командой mysql_query("SET NAMES 'cp1251'");
может другую кодировку надо выбрать?

Спустя 8 минут, 3 секунды (23.07.2010 - 12:39) inpost написал(а):
http://phpforum.ru/index.php?showtopic=315...15&#entry606893

Только что рассписал, как переделать документ под нормальную кодировку! Всегда пользуйся только ЮТФ-8

Спустя 2 часа, 3 минуты, 10 секунд (23.07.2010 - 14:42) _Dimarik__ написал(а):
а как считать максимальный id???
вот это не работает как надо. всегда выдаёт Resource id #12
$id = mysql_query("SELECT MAX(id) FROM userlist;")or die('Ошибка. Невозможно зарегестрироваться. Попробуйте позже.')

Спустя 59 минут, 51 секунда (23.07.2010 - 15:42) inpost написал(а):
"SELECT id FROM userlist ORDER BY id DESC"
$myrow = mysql_fetch_assoc($result);
echo $myrow['id'];

ты про это???
Быстрый ответ:

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