Jump to content
php.lv forumi

Recommended Posts

Posted

Kāds var palīdzēt? Gribu uztaisīt testu ar php, bet nezinu kā to riktīgi izdarīt. Pārejot no vienas uz citu formu pazūd mainīgie. It kā mēģināju ar sesiju, bet nesanāk. Ir idejas kā to labāk paveikt?

Posted

Piemeram shads gabalins:

 

<?if (!empty($_POST)){

extract($_POST, EXTR_SKIP);}

if (!empty($_GET)){extract($_GET, EXTR_SKIP);}

if (!empty($_COOKIE)){extract($_COOKIE, EXTR_SKIP);}

 

session_start();

$_SESSION['vards']=$vards;

$_SESSION['dators']=$dators;

 

echo "

<FORM name=start METHOD=\"post\" ACTION=\"\".$PHP_SELF.\"\">\n

<input name=\"vards\" width=125>\n

<input type=\"submit\" name=\"go\" value=\" sākt \">

</FORM>

";

 

if(isset($go)) {

echo "

Tavs vārds ir $vards

<FORM name=uzd_01 METHOD=\"post\" ACTION=\"\".$PHP_SELF.\"\">\n

<input type=\"submit\" name=\"go01\" value=\"nākamais\">

</FORM>";

}

 

if(isset($go01)) {

echo "

Tavs vārds ir $vards

<FORM name=uzd_02 METHOD=\"post\" ACTION=\"\".$PHP_SELF.\"\">\n

<input type=\"submit\" name=\"go02\" value=\"nākamais\">

</FORM>";

}

 

if(isset($go02)){

echo $vards;

session_destroy();

}

?>

 

Es gribu lai ievaditais $vards paradas ari talak, bet tas nenotiek. Ja sapratishu ka to darit, tad jau tikshu gala pats ;)

Posted

Tu viņu katru reizi vienkārši ņem un pārraksti, tur arī ir tā problēma.

 

Ja tu kaut ko ieliec sesijā, tad nākamajā lapā tev tas vairs nav viņā jāliek iekšā - tu jau vari ņemt ārā. Attiecīgi:

<?if (!empty($_POST)){

extract($_POST, EXTR_SKIP);}

if (!empty($_GET)){extract($_GET, EXTR_SKIP);}

if (!empty($_COOKIE)){extract($_COOKIE, EXTR_SKIP);}

 

session_start();

$_SESSION['vards']=$vards;

$_SESSION['dators']=$dators;

varētu izskatīties kā:

<?php 
if (!empty($_POST)){
extract($_POST, EXTR_SKIP);}
if (!empty($_GET)){extract($_GET, EXTR_SKIP);}
if (!empty($_COOKIE)){extract($_COOKIE, EXTR_SKIP);}

session_start();
if (!empty($vards) && !empty($dators)){
$_SESSION['vards']=$vards;
$_SESSION['dators']=$dators;
}

 

Pēc tam skatāmies tālāk ;)

Posted

nez, nez, bet tomēr iemācies rakstīt stringus ar apostrofiem

 

atseko šito

<?php
session_start();
if (isset($_POST['vards']))
$_SESSION['vards']=$_POST['vards'];

echo 'Ja ðis te atðíirsies, tad sanâk, ka katru reizi tiek uzsâkta jauna sesija '.session_id();
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post">';
if (!empty($_SESSION['vards']))
{
echo '<br />Tavs vards ir '.$_SESSION['vards'];
if (!isset($_POST['go1']))
 echo '<input type="submit" name="go1" value="go 1" />';
else
 echo '<input type="submit" name="go2" value="go 2" />';
}
else
echo '<input type="text" name="vards" /><input type="submit" name="go" value="go" />';
echo '</form>';
print '<pre>'.print_r($_POST,1).'</pre>';
print '<pre>'.print_r($_SESSION,1).'</pre>';
?>

Posted

A kaapeec Tev vispaar izmantot sesiju? Var tachu MySQL tabulaas saglabaat, cik taalu ir tikts, kas un kaa ir atbildeets, utt....

Posted

Paldies!

 

Es jau tikai vēl mācos (mocos :blink: ) ar visu šito php štelli.

 

Mēģināšu pāriet uz apostrofiem (1x), nenojautu par tiem.

Līdz sql vēl neesmu ticis.

Posted
tik un tā tač kautkā jāindeficē lietotājs. ar get parametru? nav skaisti

12544[/snapback]

 

Nu kaut kad sen atpakalj es sataisiiju PL-SQL aplikaaciju, kas usernami un passwordu staipa shurpu turpu no vienas formas uz otru caur hidden laukiem... Tiesa, tas bija maaciibu vajadziibaam :)

Posted

1ais web-kodētāja likums:

neticēt lietotāja datiem

 

hidden lauks ir lietotāja dati

sessija ir servera/procesa dati - un arī tiem es ne vienmēr ticu ;)

Posted

hidden datus vispār neatbalstu. jo mazāk web-aplikācija atkarīga no lietotāja (resp. - no lietotāja padotajiem mainīgajiem), jo labāk. man jau vienmēr patīk paspaidīt visādus mainīgos :D

×
×
  • Create New...