Autor | Zpráva | ||
---|---|---|---|
Zonicek Profil * |
#1 · Zasláno: 2. 12. 2004, 14:00:34
Zdrawíčko.. mám tento script...
if ($send3 ) { global $id; // vytvoøíme unixový èas // $datum = MkTime(0,0,0,$mesic,$den,$rok); // updatujeme údaje z formuláøe $sql = mysql_query("UPDATE seznamvysetreni SET nazev = '$nazev' WHERE id = '$id'"); echo "<H3>Upraveno </H3>\n"; echo "$id" ; // ukonèíme skript //foot(); //exit; } if ($id) { global $id; // selectuje se èlánek s konkrétním id $sql2 = mysql_query("SELECT * FROM seznamvysetreni WHERE id = '$id'"); $data = mysql_fetch_row($sql2); ?> <H3 ALIGN="left">Úprava oboru<? echo "$id" ; ?></H3> <FORM METHOD="POST" ACTION="seznamvys2.php?id=<?php echo"$id" ?>"> <INPUT TYPE="HIDDEN" NAME="send3" VALUE="true"> <TABLE BORDER="1" CELLSPACING="0" CELLPADDING="4" ALIGN="left"> <TR> <TD><B>Název oboru:</B></TD> <TD><INPUT TYPE="TEXT" NAME="nazev" SIZE="58" MAXLENGHT="150" VALUE="<? echo $data[2]; ?>"></TD> </TR> <TR> <TD ALIGN="CENTER" COLSPAN="4"><INPUT TYPE="SUBMIT" VALUE="ODESLAT"></TD> </TR> </TABLE> <br><br><br> </FORM> <?}?> Když dám odselat tak mi to napíše opraveno... ale nic to neopraví a taky to nenapíše už tu proměnou co podtim mám to echo Když dám editovat tak se mi vypíše ta proměná jako že úprava a proměná ale když dám odeslat tak se mi to neodešle s proměnou.. Ale když jak tam mám to SQL : $sql = mysql_query("UPDATE seznamvysetreni SET nazev = '$nazev' WHERE id = '$id'"); tak když místo $id dám třeba 50 tak se to natý 50tce změní :( Nevíte co stim ? |
||
I. M. Bur Profil * |
#2 · Zasláno: 2. 12. 2004, 14:13:26
V tom pripade pochopitelne je problem s obsahem promenne $id. Zkontroluj co v ni je, protoze jestli je v ni neco jineho nez ID (napr. prazdny retezec), tak ti to updatuje vsechny sloupce kde ID='' a to predpokladam neni ani jeden.
|
||
Zonicek Profil * |
#3 · Zasláno: 2. 12. 2004, 14:15:26
mnoo já to odesílám s ID jenze mi dotoho form3 to ID nedojde :( a nevim jak ho tam dostat :(
|
||
Zonicek Profil * |
#4 · Zasláno: 2. 12. 2004, 14:16:05
když dám upravit tak tam ta ID ještě je .. ale když dám odeslat tak tam už neni protože mi to napíše jenom upraveno.. a mělo by to napsat upraveno a $id
|
||
Wan-To Profil * |
#5 · Zasláno: 2. 12. 2004, 15:52:18
Za příkazy if máš global $id. Tam bude chyba...
global se totiž používá ve funkcích, když potřebuješ přístup k nějaké proměnné, která byla vytvořena mimo funkci:
To nefunguje (pro funkci nebude $a existovat), správně je:
Nevím, proč tě napadlo includovat globální proměnnou $id v příkazu if, který je taky globální (protože není ve funkci). Data z POST formulářu se čtou takto:
Pro GET je to pole $HTTP_GET_VARS["název formulářového prvku"]. Když vymažeš obě global $id a na začátek skriptu přídáš $id = $HTTP_POST_VARS["id"], mělo by to fungovat... |
||
llook Profil |
#6 · Zasláno: 3. 12. 2004, 07:13:02
Pro formulářová data je lepší používat pole $_GET a $_POST, je to přehlednější:
$id = $_POST['id']; |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0