Autor Zpráva
Apacuka
Profil
Zdravím,
mám tabulku

CREATE TABLE `doplnit_data` (
`id_d` int( 11 ) NOT NULL AUTO_INCREMENT ,
`user_id` int( 11 ) NOT NULL ,
`datum` datetime default NULL ,
`album_id` int( 11 ) NOT NULL ,
`odkaz_a` varchar( 1000 ) NOT NULL ,
`info_a` varchar( 1000 ) NOT NULL ,
`zapsano` int( 1 ) NOT NULL default '0',
PRIMARY KEY ( `id_d` )
) ENGINE = MYISAM AUTO_INCREMENT =1 DEFAULT CHARSET = utf8

a tímto skriptem ji chci naplnit

<?php
.
.
$user_id = $_SESSION['logged_id'];
$datum = date ('Y-m-d H:i:s');
$odkaz = $_POST['odkaz'];
$info = $_POST['info'];
$id = $row['id_a'];
mysql_query ("INSERT INTO doplnit_data (user_id,datum,album_id,odkaz_a,info_a,zapsano) VALUES ('$user_id','$datum','$id','$odkaz','$info');", $GLOBALS["link"]);
$chyba = mysql_error($GLOBALS["link"]);
if ($chyba==='') echo "<div class=\"hlaskaok\">Informace byly odeslány a nyní čekají na zveřejnění.</div>";
else echo "$user_id + $datum + $id<br>\nData nebyly odeslány. Databáze vrátila chybu $chyba <br>\n";
.
?>

takto mi to nezapíše nic a vratí chybu
Data nebyly odeslány. Databáze vrátila chybu Column count doesn't match value count at row 1

když přidáním ('0') do VALUES změním na
mysql_query ("INSERT INTO doplnit_data (user_id,datum,album_id,odkaz_a,info_a,zapsano) VALUES ('0','$user_id','$datum','$id','$odkaz','$info');", $GLOBALS["link"]);
tak se sice dotaz provede, ale naplní user_id 0 a tím se data v statních řádcích posunou

odesílaná data testuji pomocí
else echo "$user_id + $datum + $id<br>\nData nebyly odeslány. Databáze vrátila chybu $chyba <br>\n";
a zde se vypisují všechny správně.

Může prosím někdo poradit v čem je zakopanej pes?
Kajman_
Profil *
mysql_query ("INSERT INTO doplnit_data (user_id,datum,album_id,odkaz_a,info_a,zapsano) VALUES ('$user_id','$datum','$id','$odkaz','$info',now())", $GLOBALS["link"]); 
tiso
Profil
Kajman: keďže dátový typ toho stĺpca je int(1) tak by tam malo byť miesto now() skôr 0, 1 a podobne...
Apacuka
Profil
Tohle mě už fakt vůbec nenapadlo .. stačilo tu nulu hodit na konec, a ne na začátek.
Už do toho asi koukám moc dlouho.

díky moc za pozornost a odhalení příčiny.


Ještě mám jeden dotaz, ale ten spíš patří do PHP.
jak docílit toho, aby se to echo při chybě nebo splnění nevypsalo na té stejné stránce nahoře
nýbrž se v tom pracovním okně zobrazilo pouze to echo + by tam byl zpáteční odkaz na ten skript, který jsem prováděl předtím?
Musel bych to dělat pomocí include, nebo by k tomu stačila nějaká podmínka?
Nox
Profil
Apacuka
Možná máš na mysli konstrukty die nebo exit? Mrkni do manuálu jestli je to to, co myslíš
Apacuka
Profil
tak jsem zkusil echo nahradit die
hlaska se zobrazi dobře jak chci, ale ukousne se zbytek stranky + pravy menu.

Když bych chtel, aby se to zobrazovalo dobře, tak jedine pak uz přes ten include,
nebo do každýho die jeste vložit zdroják zbytku stránky ... je to tak?
SwimX
Profil
Apacuka:
nebo do každýho die jeste vložit zdroják zbytku stránky ... je to tak?
to určitě nedělej

aby se to echo při chybě nebo splnění nevypsalo na té stejné stránce nahoře
nýbrž se v tom pracovním okně zobrazilo pouze to echo + by tam byl zpáteční odkaz na ten skript, který jsem prováděl předtím?
tomu nerozumím, zkus mi to nějak přiblížit?
Apacuka
Profil
tomu nerozumím, zkus mi to nějak přiblížit?
mrkni sem http://punksystem.unas.cz/
přihlaš se >> jdi na nějaký album >> doplnit >> odešli nejaký data ... a nahoře se zobrazí zelenej pruh o provedení.

když nic nevyplníš ... tak se to díky die vypíše jak chci já, akorat s tím že je useklej zbytek stránky

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: