Jump to content

PHP: Soli pa solim :O)


Guest
 Share

Recommended Posts

1) NEKO nejeedzu no PHP.

2) Seezhu, lasu to graamatiju.. PHP soli pa solim...

tur staav rakstiits:

 

Veidojot HTML formu, katram tās laukam tiek dots unikāls nosaukums. Piemēra pēc iedomāsimies, ka Tu vēlies ar katru savu apmeklētāju sasveicināties vārdā un savas mājas lapas pirmajā lapā esi izveidojis zemāk parādīto formu, kurā apmeklētājam, lai viņš tiktu tālāk, ir jāieraksta savs vārds.

 

<form action="greeting.php" method="post">

Ieraksti, lūdzu, savu vārdu:<input type="text" name="vards"><br>

<input type="submit" name="submit"

value="tālāk">

</form>

 

Pēc pogas tālāk nospiešanas formā ievadītā informācija tiek nodota PHP scenārijam ar nosaukumu greeting.php, kas visu saņemto informāciju sadala pa mainīgajiem. Šajā konkrētajā piemērā greeting.php izveidos tikai vienīgu mainīgo ar nosaukumu $vards, kura vērtība būs apmeklētāja formā ievadītais vārds. Turpmāk scenārijā šī informācija būs pieejama, vēršoties pie attiecīgā mainīgā:

 

print ("Topi sveicināts manā mājas lapā, $vārds!n");

 

Izveidoju 2vus PHP failus...

 

1) index.php

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>



<body>

<form action="greeting.php" method="post">

Ieraksti, lūdzu, savu vārdu:<input type="text" name="vards"><br>

<input type="submit" name="submit"

value="tālāk">

</form>



</body>

</html>

 

 

2) greeting.php

 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<title>Untitled Document</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>



<body>

<?

print ("Topi sveicināts manā mājas lapā, $vards !n");

?>

</body>

</html>

 

Taakaa nejeedzu neko.. tad nav nejausmas pie kaa kjerties klaat..

Probleema taada ka protams nekas uz ekraana neparaadas.. tb vertiiba $vards netiek nodota...

Laikam es vienkaarshi nemaaku jamo ieguut...

Bet nu tanii soli pa solim arii nevaarda pa shito :O))

 

Tagad varat mani nomeetaat ar veciem tomaatim :)))

Link to comment
Share on other sites

Peec shitaas graamatas nemaacies.

Jamaa rakstiita sliktaa stilaa - ar register_globals ON, taa ir slikta prakse (ljoooti vulnerabla) un tamdeelj globaalie mainiigie parasti staav izsleegti.

Lai sanjemtu mainiigos izmanto

$vaards=$_POST['vards'];

echo $vaards;

 

Un taa katra veertiiba jaasavaac no ievadiitaas formas.

 

Biku papildinaaju:

print ("Topi sveicināts manā mājas lapā, $vards !n");

vietā tomēr ieteiktu raktīt:

echo'Topi sveicināts manā mājas lapā, '.$vards.'!'; 

 

Bet nu vienalga tev mainīgais $vards jaasavaac ar $_POST['vards']

Link to comment
Share on other sites

Paldies !

:O)

Mani tika iizbriinija tas ka es pashaa graamatas saakumaa uzduuros shitaadai fignjai...

Un neviena vaarda pa post.. nav nekas izskaidrots ka tru get vai post un ar ko atskjiraas...

bljin...

 

Nu nekas.. bik palasiishu tomer.. glupaaks tak es nepalikshu..:O)

Talasiishu shito un tad njemshu kautko citu :)

Kautgan ja shitaa turpinaasies, viegli nebuus :O)))

Link to comment
Share on other sites

Nu zin kaa - vari jau sev uzlikt to register_globals ON, bet labaak maaciiies uzreiz ar OFF, lai pierod (: Bez tam - taa projekts kljuust paarskataamaaks - var redzeet, no kurienes rodas mainiigie! (:

 

Drošība - pirmajā vietā!! (:

 

baidevai - or shito graamatu ljoti daudzi atduras pret sho probleemu. THP jamo rakstiija veel tajos laikos, kad par globaalajiem mainiigajiem iisti veel nedomaaja (: t.i. - visur staaveeja ON. Iznaaca tik kkaa noveeloti...

Link to comment
Share on other sites

Nu taakaa man uz taa servera shistas griezhas... jamais nav tikai eksperementiem.. tad labaak lai paliek OFF :>

Es tip kad konfigureeju php es jau nerubiiju ko kas noziimee... tagad vismaz kautkaadu mazuminju saprotu :)

 

mmm

a kaa dabuut eemm

nu doma

 

index.php


<form action="greeting.php" method="post">

Ieraksti, lūdzu, savu vārdu:<input type="text" name="vards"><br>

<input type="submit" name="submit"

value="tālāk">

</form>



<?

Echo $vards

?>

 

 

greeting.php


<?

$vards=$_POST['vards'];

?>

 

 

 

Es taa saprotu ka greeting.php ir kaa apahskprogramma kura tiek izsaukta tad kad es nospiezh submit un kad greeting.php izpildijas tad vadiiba tiek nodota atpakalj uz to koodu no kura greeting.php tika izsaukts? tb index.php

 

P.S Un kaa tas register_globals ON var ietekmeet droshiibu???

Link to comment
Share on other sites

Guest spameris

Nē, tavā gadījumā index.php ir noparsēts un lietotāja pārlūkam nodots HTML. Pēc formas pogas nospiešanas tiks ierakstīti visi POST dati un tiks parsēts greeting.php kurā jau tos POST datus drosi var izmantot.

 

Register globals ON, manuprāt atļauj man ierakstīt pārlūkā greeting.php?vards=Kuuminsh un tavā PHP lapā es praktiski esmu autentificējies kā tu (T.i. esmu izmainījis globālo mainīgo, kas atbild par lietotājvārdu, kas nepavisam nav droši, vai ne?).

Link to comment
Share on other sites

Man jau labaak patiktu shitaa

 

$vaards = $_GET['vaards']; //nu logjiski no formas

setcookie('vaards', 'Kuuminsh'); //expire utt arii var salikt. tas stiliigaak :)

Link to comment
Share on other sites

Eeej, Kuuminjsh, bik paarkjeeris esi.

 

index.php

<form action="greeting.php" method="post">

Ieraksti, lūdzu, savu vārdu:<input type="text" name="vards"><br>

<input type="submit" name="submit"

value="tālāk">

greeting.php


<?

$vards=$_POST['vards'];

echo 'Topi nu ka sveicināts '.$vards;

?>

vai


echo 'Topi nu ka sveicināts '.$_POST['vards'];



Link to comment
Share on other sites

Izveido kontu, vai pieraksties esošajā, lai komentētu

Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas

Izveidot jaunu kontu

Piereģistrējies un izveido jaunu kontu, tas būs viegli!

Reģistrēt jaunu kontu

Pierakstīties

Jums jau ir konts? Pierakstieties tajā šeit!

Pierakstīties tagad!
 Share

×
×
  • Izveidot jaunu...