Запись строки в БД.
Вот есть такая страничка - http://horrorgame.byethost15.com/alb/admin.php?albums=add#
Первый блок с инпутами и textarea имеют name="addalbum[]", т.е автомассив, который я потом перевожу в строку с помощью serialize().
Проблема заключается в том, что я не знаю, как записать сериализованный массив в БД.
Вот код:
Код:
switch($albums):
case("add"):
include("add/add.htm");
echo "<div id=\"songlist\">";
for($i=1; $i<=$_POST['number']; $i++) {
echo "<input name=\"linksname[]\" value=\" Имя песни..\" onfocus='this.value=(\"\");'><br />";
}
echo "</div>";
for($i=1; $i<=$_POST['number']; $i++) {
echo "<input name=\"linkshref[]\" value=\" Ссылка..\" onfocus='this.value=(\"\");'><br />";
}
echo "</div>
<input type=\"submit\" id=\"submit\" name=\"submit\" value=\"Отправить...\">
</form>
</body>
</html>";
if($_POST['submit']) {
for($i=0; $i<=13; $i++) {
echo $addalbum[$i];
$str = serialize($addalbum[$i]);
echo $str;
}
mysql_connect("localhost", "*", "*") or die("Невозможно подключиться к базе!");
mysql_select_db("*") or die("Нужная БД не существует!");
mysql_query("INSERT INTO audio(data) VALUES('$str')") or die("Невозможно произвести запись результатов.");
}
break;
endswitch;
?>
case("add"):
include("add/add.htm");
echo "<div id=\"songlist\">";
for($i=1; $i<=$_POST['number']; $i++) {
echo "<input name=\"linksname[]\" value=\" Имя песни..\" onfocus='this.value=(\"\");'><br />";
}
echo "</div>";
for($i=1; $i<=$_POST['number']; $i++) {
echo "<input name=\"linkshref[]\" value=\" Ссылка..\" onfocus='this.value=(\"\");'><br />";
}
echo "</div>
<input type=\"submit\" id=\"submit\" name=\"submit\" value=\"Отправить...\">
</form>
</body>
</html>";
if($_POST['submit']) {
for($i=0; $i<=13; $i++) {
echo $addalbum[$i];
$str = serialize($addalbum[$i]);
echo $str;
}
mysql_connect("localhost", "*", "*") or die("Невозможно подключиться к базе!");
mysql_select_db("*") or die("Нужная БД не существует!");
mysql_query("INSERT INTO audio(data) VALUES('$str')") or die("Невозможно произвести запись результатов.");
}
break;
endswitch;
?>
Помогите, пожалуйста..:(
Главная страница красочная?..
Всмысле?
Что пишет MySQL? Какая ошибка?
В том-то и дело, что никакая ошибка не выводиться, а в БД записывается только N; вместо сериализованного массива.
Хорошо. Какие значения принимает у тебя $str перед вызовом mysql_query?
Код:
for($i=0; $i<=13; $i++) {
echo $addalbum[$i];
$str = serialize($addalbum[$i]);
}
echo $addalbum[$i];
$str = serialize($addalbum[$i]);
}