Сделал простенькую админку на вставку статей в базу. Все работает, когда в таблице базы всего два столбца, запрос выглядит так:
mysql_query("INSERT INTO `test` VALUES(null, '".$_REQUEST['text']."');");
А вот когда в таблице 3 и более столбца, то тут начинаются проблемы. Что я не пробовал, ничего не помагает.
Вот к примеру, что я пишу:
mysql_query("INSERT INTO `test` VALUES(null, '".$_REQUEST['text']."','0');");
Запись просто не добавляется в базу и все.
Смотрел справочник, но так и не смог добавить информацию в нужные мне столбцы.
Помогите, плиз!
Спустя 53 минуты, 50 секунд (4.03.2010 - 23:48) phz написал(а):
Вот к примеру я создаю таблицу:
Потом в неё вставляю запись:
Проверяй данные которые ты вносишь в таблицу (читай тут http://phpforum.ru/index.php?showtopic=21213 - много интересного), к примеру:
И почитай http://php.inkz.ru/ - лучше не видел
CREATE TABLE IF NOT EXISTS `test` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`pass` varchar(32) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Потом в неё вставляю запись:
$sql = mysql_query("INSERT `test` SET
`name` = '".$_POST['name']."',
`pass` = '".$_POST['pass']."'
") or die(mysql_error() ."<br/>". $sql);;
Проверяй данные которые ты вносишь в таблицу (читай тут http://phpforum.ru/index.php?showtopic=21213 - много интересного), к примеру:
$sql = mysql_query("INSERT `test` SET
`name` = '".mysql_real_escape_string($_POST['name'])."',
`pass` = '".mysql_real_escape_string($_POST['pass'])."'
") or die(mysql_error() ."<br/>". $sql);;
И почитай http://php.inkz.ru/ - лучше не видел
Спустя 21 минута, 54 секунды (5.03.2010 - 00:10) Artashat написал(а):
phz спасибо, очень познавательно.
Но мне интересно, почему моя команда на вставку не работает? Ведь это самое элементарное. Например, я хочу чтобы заполнялись строго определенные столбцы.
mysql_query("INSERT INTO `test` VALUES(null, '".$_REQUEST['text']."','0');");
Где я допустил ошибку, не пойму.
Но мне интересно, почему моя команда на вставку не работает? Ведь это самое элементарное. Например, я хочу чтобы заполнялись строго определенные столбцы.
mysql_query("INSERT INTO `test` VALUES(null, '".$_REQUEST['text']."','0');");
Где я допустил ошибку, не пойму.
Спустя 7 минут, 44 секунды (5.03.2010 - 00:18) phz написал(а):
Покажи свою таблицу, хрен его знает так гадать куда данные летят и в какие поля и почему не записываются
Спустя 6 минут, 12 секунд (5.03.2010 - 00:24) phz написал(а):
Вот смотри на этот код и на свой (нужно указывать поля куда зан. инфу):
Код на форуме оформ. в спец. теги
INSERT INTO `test` (
`id` ,
`name` ,
`pass`
)
VALUES (
NULL ,
'пиво',
'хватит'
);
Код на форуме оформ. в спец. теги
Спустя 4 минуты, 52 секунды (5.03.2010 - 00:29) phz написал(а):
Я думаю ты знаешь что такое phpMyAdmin. Создай там таблицу и там есть кнопка вставить. Нажми и заноси прям в phpMyAdmin запись и жми ок. И запись добавится и покажет тебе SQL-код. Хороший наглядный пример для учёбы.
Спустя 5 минут, 7 секунд (5.03.2010 - 00:34) Guest написал(а):
phz спасибО!!! Вы мне помогли!
Спустя 18 секунд (5.03.2010 - 00:34) Artashat написал(а):
Guest
Спустя 1 минута, 19 секунд (5.03.2010 - 00:36) Artashat написал(а):
phz спасибО!!! как я не додумался посмотреть код в самой базе на вставку))
Спустя 12 секунд (5.03.2010 - 00:36) Guest написал(а):
все работает теперь))
Спустя 10 минут, 42 секунды (5.03.2010 - 00:47) Artashat написал(а):

Все равно не добавляются..
Вот код.
<tr>
<td align="center"><strong>Добавить test.php</strong></td>
</tr>
<tr>
<td align="center"><a href="admin_serg.php">на главную админ</a></td>
</tr>
<tr>
<td align="center"><form method="post" action="admin_serg.php?name=test&mode=add" enctype="multipart/form-data">
<table cellpadding="5" cellspacing="2">
<? if (isset($_REQUEST['mode'])) {
mysql_query("INSERT INTO `test` VALUES(null, '".$_REQUEST['text']."', '') ;");
$result = mysql_query("SELECT `id` FROM `test` ;");
?>
<tr>
<td height="100" colspan="2">test.php?id=<?=mysql_num_rows($result);?></td>
</tr>
<? } ?>
<tr>
<td width="95">Отчет:</td>
<td width="81%"><textarea name="text" cols="50" rows="20"></textarea></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Добавить" /></td>
</tr>
</table>
</form>
</td>
</tr>
Спустя 1 минута, 43 секунды (5.03.2010 - 00:48) Adil написал(а):
mysql_query("INSERT INTO `test` VALUES(null, '".$_REQUEST['text']."', '') ;") or die(mysql_error());
mysql_query("SELECT `id` FROM `test` ;") or die(mysql_error());
Спустя 5 минут, 49 секунд (5.03.2010 - 00:54) Artashat написал(а):
Тоже не помогло.
А почему для 2 столбцов работает, а для трех не хочет?
А почему для 2 столбцов работает, а для трех не хочет?
Спустя 1 минута, 19 секунд (5.03.2010 - 00:55) Adil написал(а):
что не помогло? Ошибку выдало какую-нибудь?
Спустя 5 минут, 4 секунды (5.03.2010 - 01:00) Artashat написал(а):
Нет, ошибку не выдало. Как обычно появилась запись информационная запись о последней добавленной записи "test.php?id=6" (эти 6 статей я добавлял не через админку).
Я чего только не пробовал. Перечислял даже просто для всех столбцов значения типо
mysql_query("INSERT INTO `test` (`id` , `name` , `info`) VALUES (NULL , 'один', 'два'); ");
Не работает.
Я чего только не пробовал. Перечислял даже просто для всех столбцов значения типо
mysql_query("INSERT INTO `test` (`id` , `name` , `info`) VALUES (NULL , 'один', 'два'); ");
Не работает.
Спустя 2 минуты, 1 секунда (5.03.2010 - 01:02) Artashat написал(а):
А вот эта команда проходит на ура, и все добавляется
mysql_query("INSERT INTO `test` (`id` , `name`) VALUES (NULL , 'один'); ");
Но третий столбец надо совсем удалить из таблицы базы, чтобы осталось два.
mysql_query("INSERT INTO `test` (`id` , `name`) VALUES (NULL , 'один'); ");
Но третий столбец надо совсем удалить из таблицы базы, чтобы осталось два.
Спустя 1 час, 28 минут, 41 секунда (5.03.2010 - 02:31) inpost написал(а):
Пиши в стиле
Так будет намного удобнее в будущем работать, чем через VALUES
SET
`name` = '".mysql_real_escape_string($_POST['name'])."',
`pass` = '".mysql_real_escape_string($_POST['pass'])."'
Так будет намного удобнее в будущем работать, чем через VALUES