Jump to content
php.lv forumi

login skripta mainīgie


Ownmen

Recommended Posts

Sveiki, man ir šāds kods (atļaušos ielikt šeit nevis paset.php.lv, jo nav īpaši garš):

<?php
session_start();

$viens = 'viens';
$divi = 'divi';

if(isset($_GET['darbiiba']) and $_GET['darbiiba'] == 'login')
{
$i_1 = htmlspecialchars($_POST['viens']);
$i_2 = htmlspecialchars($_POST['divi']);
if(!empty($i_1) and !empty($i_2) and $i_1 == $viens and $i_2 == $divi)
{
	$_SESSION['login'] = time();
}
else
{
	$nebuus = 'Nepareizi parametri!<br />';
}
}
?>
<!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=utf-8" />
<title>Ienākt</title>
</head>

<body>
<?php
if(!isset($_SESSION['login']))
{
?>
<form method="post" action="index.php?darbiiba=login">
<?php if(isset($nebuus)) echo $nebuus; ?>
<input type="text" name="viens" /><br />
<input type="password" name="divi" /><br />
<input type="submit" value="Ienākt" />
</form>
<?php
}
else
{
echo 'logged in!';
}
?>
</body>
</html>

Un es vēlējos vaicāt, ja es nezinu mainīgo $viens un $divi vērtības, vai ir kāda iespēja tos noskaidrot (izdrukāt ar javascript arlet utml.) vai kādi citādāk panākt, ka es ielogojos (izveidot sesiju login no kādas citas vietas utml), ja ir kāds veids, tad būtu ļoti jauki, ja Jūs to parādītu vai vismaz pateiktu. Neceru uz lielo atsaucību, bet nu mēģināts nav zaudēts...

Link to comment
Share on other sites

var definēt

$viens = $_GETvaiPOST['viens']
$divi = $_GETvaiPOST['divi']
echo $viens " = viens" . $divi " = divi";

Par tām ķepiņām šaubos va pareizi

Edited by waplet
Link to comment
Share on other sites

labi, skaidrs ar tevi, laikam nesaprati, ka es vairs nevaru mainīt to kodu! pamēģini uzlikt uz localhost to kodu un izdrukāt mainīgos $viens un $divi, nemainot manis iedoto kodu! Kur tad Tu liksi to

$viens = $_GETvaiPOST['viens']
$divi = $_GETvaiPOST['divi']
echo $viens " = viens" . $divi " = divi";

 

EDIT:

konkretizēšu, ja man mainīgais $viens = 'lietotaajs'; ir šāds, tad man vajag kaut kur izdrukāt to vērtību "lietotaajs", tā pat ar $divi neliekod pirmaa posta kodā nevienu rindiņu, izmantojot tikai internetpārlūku utml.

Edited by Ownmen
Link to comment
Share on other sites

atradu kļūdiņu tev :)

ir

if(!empty($i_1) and !empty($i_2) and $i_1 == $viens and $i_2 == $divi)

jābut

f(!empty($i_1) and !empty($i_2) and $i_1 == htmlspecialchars($viens) and $i_2 == htmlspecialchars($divi))

 

vari izvadit

 

Javascript

<?php
echo "<script>
alert('1: ".str_replace("'", "\"", $i_1.")."\\n2: ".str_replace("'", "\"", $i_2.")."');
</script>";
?>

 

php

<?php
echo "1: $i_1<br>2:$i_2<br>";
echo("1: $i_1<br>2:$i_2<br>");
print("1: $i_1<br>2:$i_2<br>");
?>

Link to comment
Share on other sites

vari ielikt citā failā

ar require(tavs kods.php)

un tad to visu ko es iedevu!

p.s. pastījos kodu , tev jau viņi ir definēti kā $i_1 un $i_2 , vnk requiro un izečo!

Edited by waplet
Link to comment
Share on other sites

njuu pieliec tur kur tev akcepte loginu ieliec

 

$cepums="mylogin";
$vertiba=$viens."|".$divi;
$vertiba=base64_encode($vertiba);
setcookie($cepums, $vertiba, time()+3600);

un lai paraditu dari ta

$cepums="mylogin";
if($_COOKIE[$cepums]) {
$vertiba=base64_decode($_COOKIE[$cepums]);
setcookie($cepums, $vertiba, time()+3600);
$ex=explode("|", $vertiba);
$viens=$ex[0];
$divi=$ex[1];

echo "Viens: $viens";
echo "Divi: $divi";
}

un kad logojies ara vienkarsi

setcookie($cepums, "");

Edited by Mikijs
Link to comment
Share on other sites

×
×
  • Create New...