Autor | Zpráva | ||
---|---|---|---|
Apacuka Profil |
#1 · Zasláno: 3. 8. 2009, 15:26:00 · Upravil/a: Apacuka
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 * |
#2 · Zasláno: 3. 8. 2009, 15:36:09
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 |
#3 · Zasláno: 3. 8. 2009, 15:41:49
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 |
#4 · Zasláno: 3. 8. 2009, 15:50:30
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 |
#5 · Zasláno: 3. 8. 2009, 15:59:22
Apacuka
Možná máš na mysli konstrukty die nebo exit? Mrkni do manuálu jestli je to to, co myslíš |
||
Apacuka Profil |
#6 · Zasláno: 3. 8. 2009, 16:30:46
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 |
#7 · Zasláno: 3. 8. 2009, 16:39:23
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 |
#8 · Zasláno: 3. 8. 2009, 16:46:16
„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 |
||
Časová prodleva: 15 let
|
0