PHP 5.0.3 - запись в BLOB FB

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
starling13
Сообщения: 8
Зарегистрирован: 02 мар 2005, 14:56

PHP 5.0.3 - запись в BLOB FB

Сообщение starling13 » 01 июн 2005, 00:50

Заранее прошу прощения - судя по темам здесь этим никто не занимается или проблем не возникало.

Что-то не получается записать текстовую информацию в поле BLOB сервера БД Firebird.

Код: Выделить всё

$blob_handler=ibase_blob_create($db_handler); //$db_handler /ранее открытое соединение
if (ibase_blob_add($blob_handler, "Text to add"))
{
  $update_query = "UPDATE SOME_TABLE SET BLOB_FIELD = ? WHERE CONDITION... ";
            $prepared = ibase_prepare($db_handler, $update_query);
            if (!ibase_execute($prepared, $bh))
                        {
                            echo "Congratulations!";
                        }
                        else
                        {
                            echo "Fuck!";
                        }
}
else
{
    echo "Blob not added";
}
Ошибка уже во второй строке - данный скрипт пишет "BLOB not added".
Вроде бы ошибиться негде.

Спасибо.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 01 июн 2005, 11:24

ты уже второй раз спрашиваешь. В предыдущий раз ответ был тут.
http://forum.ibase.ru/phpBB2/viewtopic. ... t=blob+php

не устроило?

тем более что для запросов с параметрами последовательность такая
1. prepare
2. заполнение параметров
3. execute

а не наоборот.

DSKalugin
Сообщения: 212
Зарегистрирован: 27 окт 2004, 13:39

бред

Сообщение DSKalugin » 17 июн 2005, 16:51

бред :shock:

Код: Выделить всё

<?php
  $dbh = ibase_connect($host, $user, $pass);
  $blh = ibase_blob_create($dbh);
  ibase_blob_add($blh, $data);
  $blobid = ibase_blob_close($blh);
  $sql = "UPDATE SOME_TABLE SET BLOB_FIELD=? WHERE CONDITION...";
  $sth = ibase_query($dbh, $sql, $blobid);
?>

FOX
Сообщения: 1
Зарегистрирован: 03 июл 2009, 13:02

Re: PHP 5.0.3 - запись в BLOB FB

Сообщение FOX » 03 июл 2009, 19:12

Добрый день, не стал создавать новую тему, пишу в ту, которая уже есть.
Проблема вобщем похожая в плане инструментария PHP+FB+Blob.

Есть таблица:
ID INTEGER
UID VARCHAR(96)
URL INTEGER
CLOCK INTEGER
TITLE VARCHAR(1200)
LINK VARCHAR(900)
ANONS BLOB
TEXT BLOB
IMAGE VARCHAR(900)
KEYS INTEGER
POLN SMALLINT

Пытаюсь добавить туда запись, таким вот запросом:
INSERT INTO DATA VALUES (10300,'bdb80c30ee485ae790e7d7227f3e44b5',118,1246633814,'Отмахов и Субботин подписали контракты с "Автомобилистом"','http://www.championat.ru/hockey/news-25 ... омобилисту" удалось продлить контракты с двумя своими хоккеистами. Новые соглашения с командой подписали защитник Владислав Отмахов и нападающий Андрей Субботин, сообщает официальный...','','',0,0);

Получаю такую ошибку:
Warning: ibase_query() [function.ibase-query]: violation of PRIMARY or UNIQUE KEY constraint "INTEG_12" on table "DATA" in /home/f/public_html/parse.php on line 340

Уникальных индексов у таблицы нет, примари-кей назначается через генератор и такого точно нет, я проверял почистил блобы, вроде записалось, хоть ранее писалось и так.
Увидел вариант создания блоба отдельно и потом добавления его через знак вопроса, хочу попробовать сделать так же, но отсюда вопрос, а как это сделать, если у меня их 2 ?

Ответить