В цикле хочу записать данные. Но нечего не записывается кроме id и date. Ошибок mysql не выдает. Просто пустые 10 записей.
Вот таблица:
CREATE TABLE IF NOT EXISTS `table` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`title` varchar(32) NOT NULL,
`text` text NOT NULL,
`date` int(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=11 ;
Вот пхп код:
for ($i = 0; $i < 10; $i++)
{
$content = '<h1>ляля</h1><td>ауау</td>';
preg_match_all("#<h1>(.+)</h1>.*<td>(.+)</td>#isU", $content, $matches);
echo $matches[1][0]; # тут записи выводятся
echo $matches[2][0]; # тут записи выводятся
mysql_query("INSERT `table` SET
`title` = '".mysql_real_escape_string($matches[1][0])."',
`text` = '".mysql_real_escape_string($matches[2][0])."',
`date` = ".time()."
");
}
Спустя 3 минуты, 36 секунд (7.05.2011 - 21:42) sharki написал(а):
phz
А если без цикла?
А если без цикла?
Спустя 23 секунды (7.05.2011 - 21:42) phz написал(а):
echo $matches[1][0]; # тут записи выводятся
echo $matches[2][0]; # тут записи выводятся
Спустя 18 минут, 53 секунды (7.05.2011 - 22:01) phz написал(а):
Цитата (sharki @ 7.05.2011 - 18:42) |
А если без цикла? |
И без цикла тоже выводиться.
Спустя 2 минуты, 50 секунд (7.05.2011 - 22:04) sharki написал(а):
погодь
Синтаксис неправильный, твой синтаксис для UPDATE а не для INSERT =)
Синтаксис неправильный, твой синтаксис для UPDATE а не для INSERT =)
Спустя 2 минуты, 41 секунда (7.05.2011 - 22:06) sharki написал(а):
Вроде так
$sql ="
INSERT INTO `table` (`title`,`text`,`date`)
VALUES ( '".mysql_real_escape_string($matches[1][0])."',
'".mysql_real_escape_string($matches[2][0])."',
".time()."
)";
Спустя 14 минут, 29 секунд (7.05.2011 - 22:21) alex12060 написал(а):
sharki
Такой формат допускается.
Такой формат допускается.
Спустя 2 минуты, 21 секунда (7.05.2011 - 22:23) phz написал(а):
На самом деле там не
я упростил тут, у меня в цикле парсит 10 страниц. Всё что спарсилось выводится. Но не записываются. Кусок текста в поле записывается и все:
может время что как-то...
preg_match_all("#<h1>(.+)</h1>.*<td>(.+)</td>#isU", $content, $matches);
я упростил тут, у меня в цикле парсит 10 страниц. Всё что спарсилось выводится. Но не записываются. Кусок текста в поле записывается и все:
<p><img src='images/l.jpg' alt='
может время что как-то...
Спустя 54 секунды (7.05.2011 - 22:24) sharki написал(а):
alex12060
Действительно, не знал...в доках щас глянул.
Действительно, не знал...в доках щас глянул.
Спустя 3 минуты, 37 секунд (7.05.2011 - 22:28) alex12060 написал(а):
phz
Сделай
Очень интересный у тебя случай.
Сделай
echo '<pre>';
var_dump($mathecs);
echo '</pre>';
Очень интересный у тебя случай.
Спустя 2 минуты, 23 секунды (7.05.2011 - 22:30) phz написал(а):
Всё, как всегда просто. Парсил с сайта 1251.. база в утф8. Привык на своих сайтах утф. Спасибо за помощь!
Спустя 6 минут, 4 секунды (7.05.2011 - 22:36) inpost написал(а):
sharki
Я его всегда именно такой использую, куда удобнее при огромных данных
phz
А ты напиши: слово mysql_query() замени на exit();, а перед этим добавь ещё <pre> и посмотри, подставляются ли данные, и если да, покажи тут как подставляются.
Я его всегда именно такой использую, куда удобнее при огромных данных
phz
А ты напиши: слово mysql_query() замени на exit();, а перед этим добавь ещё <pre> и посмотри, подставляются ли данные, и если да, покажи тут как подставляются.
Спустя 2 минуты, 48 секунд (7.05.2011 - 22:39) phz написал(а):
inpost
Сейчас всё ок. ПРоблема была в кодировках. Спасибо все за помощь и внимание.
Сейчас всё ок. ПРоблема была в кодировках. Спасибо все за помощь и внимание.