|
|
PHP problem
|
18.11.2010 17:43
krnac.a
|
Nechapem preco po vyplneni formulara mi napise hlasku Dakujem za pridanie ale do databazi sa mi nic neulozi.....mam vytvorenu databazu skuska a table ponuky....vdaka za pomoc
Mam takyto skript:
<?
if ($_SERVER["SERVER_ADDR"]=="localhost")
{
define("SQL_HOST","localhost");
define("SQL_DBNAME","skuska");
define("SQL_USERNAME","****");
define("SQL_PASSWORD","****");
}
else
{
define("SQL_HOST","mysql.nekde.cz");
define("SQL_DBNAME","databaze_u_providera");
define("SQL_USERNAME","user2");
define("SQL_PASSWORD","password2");
}
$link=mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD);
mysql_select_db(SQL_DBNAME);
$BudemeZobrazovat=true;
if (!empty($_POST))
{
if ( ponukavdb($_POST["nazovfirmy"], $link)) echo "Uvedena ponuka existuje";
{
$BudemeZobrazovat=false;
echo "Dakujem za pridanie.";
mysql_query ("insert into ponuky (nazovfirmy, plat,) values ('".$_POST["nazovfirmy"]."', '".$_POST["plat"]."');", $link);
$lastid=mysql_insert_id();
}
}
if ($BudemeZobrazovat):?>
<form method="post" action="index.php?clanek=pridajfirmu">
<table>
<tr>
<td>Nazov firmy:</td>
<td><input name="nazovfirmy" value="<?echo $_POST["nazovfirmy"]?>"></td>
</tr>
<tr>
<td>plat:</td>
<td><input name="plat" value="<?echo $_POST["plat"]?>"></td>
</tr>
<tr>
<td colspan="2"><input type="Submit" name="odesli" value="Pridat"></td>
</tr>
</table>
</form>
<?endif;?> |
|
|
Re: PHP problem
|
18.11.2010 17:48
krnac.a
|
a este tam ma byt funkcia
function ponukavdb ($nazovfirmy, $plat)
{
$vysledek=mysql_query("select * from ponuky where nazovfirmy='".$nazovfirmy."'", $link);
return (boolean) mysql_num_rows($vysledek);
} |
|
|
Re: PHP problem
|
19.11.2010 02:43
Miloslav Ponkrác
|
Základní pravidlo pro řešení všech programátorských problémů, pokud něco nejde je primitivní, účinné a akceleruje nalezení problému snad miliónkrát:
OŠETŘUJTE CHYBY
ČTĚTĚ NÁVRATOVÉ HODNOTY FUNKCÍ
ČTĚTE CHYBOVÉ KÓDY
Všechny mysql_ funkce vracejí návratovou hodnotu, kde informují jak to dopadlo. |
|
|
Re: PHP problem
|
19.11.2010 17:44
Radim Kolář
|
Jeste tam ma SQL injection diru. |
|
|
Re: PHP problem
|
21.11.2010 04:27
Miloslav Ponkrác
|
Má, ale myslím, že by měl začít od pořádného ošetřování.
Možností chyb, které mohou nastat jsou stovky, a nikdo netušíme, kde mu přesně kape. Zato on sám to může čtením návratové hodnoty a chybových zpráv zjistit do minuty. |
|
|
Re: PHP problem
|
21.11.2010 18:52
Roman
|
V dotaze "mysql_query" je jedna ciarka navyse. Preto sa prikaz nevykona.
insert into ponuky (nazovfirmy, plat,) <<<=== |
|
|
Re: PHP problem
|
22.11.2010 03:13
Miloslav Ponkrác
|
Ovšem pokud toto v PHP nevygenerovalo chybu, pak není moc chytré ladit PHP s velmi zakázaným chybovým zobrazováním. |
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|
©Pavel Kysilka - 2003-2024 |
maillinuxsoft.cz | Design:
www.megadesign.cz
|