Autor Zpráva
Andrew19
Profil
Mám tokovou prosičku mám zdrojový kód který vypadá takto :

<?
$BudemeZobrazovat=true;
if (!empty($_POST)) // už se odeslalo
{
if (!isset($_SESSION["id"])) echo "Uživatelské jméno a/nebo heslo nesouhlasí";
else
{
$BudemeZobrazovat=false;

echo "Jste přihlášen(a) jako :&nbsp;&nbsp;<strong>".$_POST["prezdivka"]. "</strong>";
echo "&nbsp&nbsp; nyní můžete pokračovat v práci prostřednictvím navigačního menu";
}
}
if ($BudemeZobrazovat):?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250" />
<link href="default.css" rel="stylesheet" type="text/css" />
</head>

<body>

<table width="360" border="1" bordercolor="#000000" align="center">
<tr>
<td><table width="360" border="0">
<tr>
<td class="nadpis_1" align="center">Přihlášení do systému Administrace</td>
</tr>
</table>
<form id="prihlasovaci_formular" method="post" action="index.php?clanek=prihlaseni">
<br>
<table width="360" border="0">
<tr>
<td width="110" class="nadpis_2">Přihlašovací jméno</td>
<td width="240"><label>
<input name="prezdivka" type="text" maxlength="20" value="<?echo $_POST["prezdivka"]?>" />
</label></td>
</tr>
<tr>
<td class="nadpis_2">heslo</td>
<td><label>
<input name="heslo" type="password" maxlength="15" value="<?echo $_POST["heslo"]?>" />
</label></td>
</tr>
</table>
<br>
<table width="360" border="0">
<tr>
<td width="24">&nbsp;</td>
<td width="326"><label>
<input type="submit" name="prihlasit" value="Přihlásit" />
</label></td>
</tr>
</table>
</form>
</td>
</tr>
</table>
<?endif;?>
</body>
</html>

tento kód mám na přihlášení a funguje skvěle, ale chtěl bych do něj přidat zapsání určitých údajů do tabulky přesně je to toto:
[p][/p]
$link = mysql_connect("localhost","root","vertrigo");
mysql_select_db('xxx', $link);
mysql_query("SET NAMES 'cp1250';");

$vysledek=mysql_query("INSERT into hlavni_logtable values(0, now(),'$HTTP_REFERER', '$HTTP_USER_AGENT' , '$REMOTE_ADDR', '$HTTP_X_FORWARDED_FOR', '$REMOTE_HOST')",$link);


avšak nevím jak to zakomponovat do předchozího kódu víte někdo jak na to?
Andrew19
Profil
když to udělám takto :

<?
$BudemeZobrazovat=true;
if (!empty($_POST)) // už se odeslalo
{
if (!isset($_SESSION["id"])) echo "Uživatelské jméno a/nebo heslo nesouhlasí";
else
{
$BudemeZobrazovat=false;

echo "Jste přihlášen(a) jako :&nbsp;&nbsp;<strong>".$_POST["prezdivka"]. "</strong>";
echo "&nbsp&nbsp; nyní můžete pokračovat v práci prostřednictvím navigačního menu";
}
}

if ($BudemeZobrazovat==false)
$akce = "prihlaseni";

$link = mysql_connect("localhost","root","vertrigo");
mysql_select_db('fyzios_databaze', $link);
mysql_query("SET NAMES 'cp1250';");

$vysledek=mysql_query("INSERT into hlavni_logtable values(0, '$_POST[prezdivka]', '$akce', now(),'$HTTP_REFERER', '$HTTP_USER_AGENT' , '$REMOTE_ADDR', '$HTTP_X_FORWARDED_FOR', '$REMOTE_HOST')",$link);


if ($BudemeZobrazovat==true):?>


v tomto případě se mi do databáze zapíší hodnoty pžezdivka akce a aktuální datum a čas ale ostatní hodnoty se nezapíší nevíte proč?
Enyeus
Profil
Místo $HTTP_REFERER používej $_SERVER["HTTP_REFERER"] ...
tiso
Profil
Pravdepodobne máš vypnuté register_globals, takže premenné '$HTTP_REFERER', '$HTTP_USER_AGENT' , '$REMOTE_ADDR', '$HTTP_X_FORWARDED_FOR' neexistujú.
Skús tam miesto nich dať: '$_SERVER[HTTP_REFERER]', '$_SERVER[HTTP_USER_AGENT]' , '$_SERVER[REMOTE_ADDR]', '$_SERVER[HTTP_X_FORWARDED_FOR]'
s tým, že nemusia existovať. $_SERVER[REMOTE_ADDR] by mala existovať stále.
Andrew19
Profil
ano s použitím $_SERVER už mi to jde akorát se mi to teď do databáze zapisuje dvakrát jednou i s prezdivkou a promenou akce a podruhé bez techto dvou nevit proc?
Andrew19
Profil
pardón moje chyba měl jsem tam dvakrát hodnotu if ($BudemeZobrazovat==false) a tak se mi to i dvakrát nahrálo do databáze!!!! děkuji moc za rady

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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