Autor Zpráva
xarox
Profil
Nevíte jak bych měl udělat chráněné jméno v návštěvní knize. Když zadám do kolonky jméno: "Admin" tak aby se pod tím objevila nová kolonka která by po mě chtěla heslo, které bych zadal a můj příspěvek by se odeslal. Zde je kód smaotné knihy:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<LINK href="../css/kniha.css" rel="stylesheet" type="text/css">
<LINK href="../css/right.css" rel="stylesheet" type="text/css">
<LINK href="../css/lista.css" rel="stylesheet" type="text/css">

<title>Návštěvní kniha</title>
<SCRIPT LANGUAGE="JavaScript"><!--
function zkontroluj(formular)
{
if (formular.jmeno.value=="")
{
alert("Vaše jméno (přezdívku) musíte vyplnit!");
formular.jmeno.focus();
return false;
}
else if (formular.popis.value=="")
{
alert("Text zprávy musíte vyplnit!");
formular.popis.focus();
return false;
}
}
// -->
</SCRIPT>
</head>

<body>

<table border="0" cellspacing="1" style="border-collapse: collapse" bordercolor="#111111" width="486" height="259">
<tr>
<td width="100%" class=nadpis height="256">
<center>
<p><font size="5">Kniha návštěv</font></p>
</center>
<p><br>

</p>

<table border="0" cellspacing="0" cellpadding="0" align="center">
<form action="insert.php" method="post" onSubmit="return zkontroluj(this)">
<tr><td width=120 class=povinne>
*Jméno: </td><td>
<input type="text" name="jmeno" size="30" maxlength="60" class="povinne">
</td></tr>
<tr><td width=120 class=nepovinne>
&nbsp; E-mail: </td><td>
<input type="text" name="email" size="30" maxlength="60" class="inputbook">
</td></tr>
<tr><td width=120 class=text>


<tr><td valign=top width=120 class=povinne>
*Text zprávy:
</td><td>
<textarea cols="29" rows="5" class="inputbook" name="popis"></textarea>
</td></tr>
<tr><td width=120>&nbsp;</td><td>
<center>
<p><input type="submit" class=bluebutton value="Odeslat">&nbsp;&nbsp;&nbsp;<input type="Reset" class=bluebutton value="Vymazat"></p>
</center>
</form></td></tr></table>
<hr class=cara>

<?

if (($_POST['nick'] == 'xarox') && ($_POST['heslo'] != 't4jnÉ H35L0')) {
echo('<form action="'.$_SERVER['PHP_SELF'].'">');
foreach ($_POST as $name => $value) {
if ($name != 'heslo') {
echo('<input type="hidden" name="'.htmlspecialchars($name).'" value="'.htmlspecialchars($value).'" />');
}
}
echo('<label for="heslo">Heslo: </label><input type="password" name="heslo" id="heslo" />');
echo('</form>');
exit;
}

function Odkaz()
{
if (File_Exists ("book.dat")):
echo "<center><font class=prispevek>Zobrazit příspevky:<br><br>";

$prispevek = File("book.dat"); //načte obsah souboru do pole
$strana = Ceil(Count($prispevek)/20); //vypocita kolik zaberou příspěvky stran (po 20)

for ($x=1;$x<=$strana;$x++): //zobrazí tolik odkazů kolik je stran
echo "<a href=kniha.php?idprispevek=$x>" . ($x*20-19) . "-" . $x*20 . "</a>&nbsp;&nbsp;&nbsp";//do každého odkazu přidá číslo strany a jaké příspěvky budou zobrazovány
endfor;
echo "</center>";
endif;
}
Odkaz();
?>
<hr class=cara>
<?
if (File_Exists ("book.dat")): //existuje soubor book.dat
if (!IsSet($idprispevek)) $idprispevek=1; //je zinicializována proměnná id, pokud ne přiřadí standartní jedničku
$pocatek = $idprispevek*20-20; //podle id spočítá od kolikátého
$konec = $idprispevek*20-1; //... do kolikáté příspěvku se bude zobrazovat

$prispevek = File("book.dat"); //načte do pole obsah book.dat
for ($i=$pocatek;$i<=$konec;$i++):
echo $prispevek[$i]; //vypíše příspěvky mezi $prispevek a $konec
endfor;
endif;

Odkaz();
?>
<hr class=cara>
</td>
</tr>
</table>



a zde je kód insert.php


<?
$name = "<table><tr><td class=jmeno>$heslo</td></tr>";
$e_mail = "<tr><td class=odkaz><A HREF=mailto:$email>$email</A></td></tr>";
$prispevek = "<tr><td class=cas>" . Date("j. " . "m. " . "Y, " . "H:i:s") . "</td></tr>";
$tag = HTMLSpecialChars($popis);
$br = str_replace("\n"," <BR> ", $tag);
$br = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\"><b>\\0</a></b>", $br);
$nadpis = "<b>Nová zpráva v návštěvní knize na <a href='http://www.masozravky.unas.cz'>www.masozravky.unas.cz</a></b><br ><br>";

$zprava = "<tr><td class=text><br>$br</td></tr></table><HR class=cara>\n";
$write = StripSlashes($name . $e_mail . $prispevek . $zprava . $web);

if (File_Exists ("book.dat")):
$fp = FOpen ("book.dat", "r");
$data = FRead ($fp, FileSize("book.dat"));
FClose($fp);
endif;

$fp = FOpen ("book.dat", "w");
FWrite ($fp, $write.$data);
FClose ($fp);

mail('junekp@centrum.cz', 'Masožravky',$nadpis . $jmeno = "<font color=red><u><b>Jméno:</b></u></font><br> $jmeno<br><br>" . $email = "<font color=red><u><b>Email:</b></u></font><br>$email<br><br>" . $popis = "<font color=red><u><b>Zpráva:</b></u></font><br>$popis", "From: info@masozravky.unas.cz\r\nContent-Type: text/html; charset=windows-1250");

?>
<html><head>
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=kniha.php">
</head></html>


Díky za pomoc. Už jsem to tady sice řešil ale moc to nefunguje od nikoho.
pyty
Profil
pod meno napr. pridaj <span id="heslo"></span>
do scriptu pridaj:

function heslo()
{
if (document.getElementById("meno").value=="Admin")
{
document.getElementById("heslo").innerHTML = '<b>Heslo:</b><input type=pass name=pass>';
}
}

if (formular.jmeno.value=="Admin" && formular.pass.value!="HeSlO")
{
alert("zle heslo");
formular.pass.focus();
return false;
}

noo, nejak tak. neviem ci to pojde, pisal som to z hlavy.
treba sa s tym trochu pohret, ale ked mas php, tak by som to vyriesil inac ako javascriptom. je to nebezpecne...
kazdy kto ti pozrie do kodu potom bude vediet heslo...
pomocou php by som caly ten script v insert.php asi obalil do ifu a dl:
if ($_POST['meno'] == 'Admin' && $_POST['heslo'] != 'heslo'){
echo 'bad';}
else {
sript...
}
ale ked sa tak na to poyeram, tak asi pisem od veci... no nic :-)
takze:
<script>
function heslo()
{
if (document.getElementById("meno").value=="Admin")
{
document.getElementById("heslo").innerHTML = '<b>Heslo:</b><input type=pass name=pass>';
}
</script>
<input name="meno" onkeypress="heslo()">
<span id="heslo"></span>
juneau
Profil *
je tohle vazne nutne resit podruhe? precti si moji odpoved u puvodniho vlakna a bude ti to fungovat... akorat zadas misto "admin" rovnou svoje heslo a u prispevku se vypise tvoje jmeno.
xarox
Profil
Jo takhle, už to jde, je jen ještě jeden problem , když zadám jiný nick tak ten se vůbec neobjevý.
xarox
Profil
PYTY>> no já sem tím javascriptem myslel to, že když zadám Admin tak se javascriptem objeví nová kolonka a ta bude chtít zadat heslo které se zkontroluje v tom insert.php.

Ale i tak díky za radu
pyty
Profil
xarox
to som ti tam predsa napisal !

<script> 

function heslo()
{
if (document.getElementById("meno").value=="Admin")
{
document.getElementById("heslo").innerHTML = '<b>Heslo:</b><input type=pass name=pass>';
}
</script>
<input name="meno" onkeypress="heslo()">
<span id="heslo"></span>
pyty
Profil
xarox
Jo takhle, už to jde, je jen ještě jeden problem , když zadám jiný nick tak ten se vůbec neobjevý
neviem ci myslis toto, ale este som tam zabudol dat jednu dvolezitu vec :

<script> 


function heslo()

{

if (document.getElementById("meno").value=="Admin")

{

document.getElementById("heslo").innerHTML = '<b>Heslo:</b><input type=pass name=pass>';
}
else {document.getElementById("heslo").innerHTML = ''; };


}

</script>

<input name="meno" onkeypress="heslo()">

<span id="heslo"></span>


a mal som tam aj chybu zo zatvorkzmi :-)
pyty
Profil
http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=3&topic=95 2
xarox
Profil
Jo díky nějak si to ještě upravim.
Toto téma je uzamčeno. Odpověď nelze zaslat.