| Autor | Zpráva | ||
|---|---|---|---|
| gygabyte Profil * |
#1 · Zasláno: 23. 9. 2010, 17:51:39
Zdravím,
mám kód
<?php
if($_GET['edit']) {
pripoj_db();
$sql = "SELECT * from ikonky where id='$_GET['edit']'";
$res = mysql_query($sql);
$z = mysql_fetch_array($res);
echo mysql_error();
echo '<form action="/admin.php" method="post"><br>';
echo '<input type="text" size="40" name="'.$z['odkaz'].'" value="'.$z['odkaz'].'><br>';
echo '<input type="text" size="40" name="'.$z['ikona'].'" value="'.$z['ikona'].'><br>';
echo '</form><br>';
}
?>funkce pripoj_db() funguje správně. stránka nevypíše žádnou chybu, ale nenačte se. Za boha nemůžu najít chybu. |
||
| ShiraNai7 Profil |
#2 · Zasláno: 23. 9. 2010, 18:19:07
1) ten radek s $sql = ... tam bych hledal syntaktickou chybu asi, kolem $_GET..
2) zkus vypsat mysql error uz pred mysql_fetch_array (tj hned za mysql_query) 3) pekna prilezitost pro sql injection tento kod |
||
| gygabyte Profil * |
#3 · Zasláno: 23. 9. 2010, 18:24:35
mysql_error() jsem přehodil, ale stále nic nevypisuje.
Na řádku s $sql chybu nevidím. S bezpečností mám problémy pořád .... |
||
| ShiraNai7 Profil |
#4 · Zasláno: 23. 9. 2010, 18:30:05
Tam teda chyba bude.. asi mas na serveru uplne vypnuto zobrazovani chyb.
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in *soubor* on line 4 Takze prepsat ten radek na toto: $sql = "SELECT * from ikonky where id='".$_GET['edit']."'"; |
||
| Keeehi Profil |
#5 · Zasláno: 23. 9. 2010, 19:20:10
A nebo takto:
$sql = "SELECT * from ikonky where id='$_GET[edit]'"; |
||
| Tori Profil |
#6 · Zasláno: 23. 9. 2010, 19:28:51
gygabyte:
můžete alespoň zajistit, že vám do db přijde jen kladné číslo: $id = (int) $_GET['edit'];
if ($id > 0) {
$sql = "SELECT * from ikonky where id='$id'";
....
}
|
||
| gygabyte Profil * |
#7 · Zasláno: 23. 9. 2010, 22:02:09
Aha... děkuji.
A jak můžu zapnout zobrazování chyb? |
||
| panther Profil |
#8 · Zasláno: 23. 9. 2010, 22:17:00
gygabyte:
error_reporting(E_ALL), ale jen pro testovací účely. |
||
|
Časová prodleva: 16 let
|
|||
0