Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Form.rejerstracji
Forum PHP.pl > Forum > PHP
Felix-thewebmaster
Mam oto taki problem. Wyslalem na serwer oba pliki z takim oto kodem.

Rejerstracja.html
Cytat
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Test php</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
</head>
<body>

<!--Listing 6.1--!>

<p>Aby sie zarejerstrowac wypelnij ten formularz: </p>

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

<p>Imie: <input type="text" name="imie"
size="20" /></p>

<p>Nazwisko: <input type="text" name="nazwisko"
size="20" /></p>

<p>Adres e-mail: <input type="text" name="email"
size="20" /></p>

<p>Hasło: <input type="password" name="haslo"
size="20" /></p>

<p>Potwierdz hasło: <input type="password" name="potwierdzenie"
size="20" /></p>

<p>Data urodzenia:
<select name="miesiac">
<option value="">Miesiac</option>
<option value="1">Styczeń</option>
<option value="2">Luty</option>
</select>
<select name="dzien">
<option value="">Dzien</option>
<option value="1">1</option>
<option value="2">2</option>
</select>
<input type="text" name="rok"
value="RRRR" size="4" /></p>
<p>Ulubiony kolor:
<select name="kolor">
<option value="">Wybierz</option>
<option value="czerwony">Czerwony</option>
<option value="żółty">Zółty</option>
</select></p>

<p><input type="submit" name="wyslij" value="Rejerstruj" /></p>

</form>

</body>
</html>

I test.php z takim kodem.
Cytat
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Test php</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
</head>
<body>
<?php // Listing 5.2 - obsluga_forum.php

// Ustawienie obsługi błędów
ini_set ('display_errors' , 1);
error_reporting (E_ALL & ~E_NOTICE);

// Na wypadek wyłączonego parametru register globals.
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$email = $_POST['email'];
$haslo = $_POST['haslo'];
$potwierdzenie = $_POST['potwierdzenie'];
$miesiac = $_POST['miesiac'];
$dzien = $_POST['dzien'];
$rok = $_POST['rok'];
$kolor = $_POST['kolor'];

print '<p>Wynik rejerstracji:</p>';

//Kontrola imienia.
if (empty ($imie)) {
  print '<p>Prosze podac imie.</p>';
}

//Kontrola nazwiska.
if (empty ($nazwisko)) {
  print '<p>Prosze podac nazwisko.</p>';
}

//Kontrola adresu e-mail.
if (empty ($email)) {
  print '<p>Prosze podac adres email.</p>';
}

//Kontrola hasla.
if (empty ($haslo)) {
  print '<p>Prosze podac haslo.</p>';
}

?>
</body>
</html>

A pokazuje sie cos takiego: www.test-privacy.yoyo.pl/rejerstracja.html i www.test-privacy.yoyo.pl/test.php jak mam zrobic zeby to wszystko dobrze wspoldzialalo ze soba i co zrobilem zle?
erix
zamiast
  1. <?php
  2. empty($zmienna)
  3. ?>


uzyj
  1. <?php
  2. empty($_POST['zmienna'])
  3. ?>


do tego zmien sposob przesylania formularza na post (method="POST")

powod: wylaczone register_globals
Felix-thewebmaster
A jak włączyć register globals?
erix
nie wlaczaj!
poczytaj na stronach php dlaczego nie.

Uzywaj tablic globalnych.
Felix-thewebmaster
To jak mam naprawic zeby bylo ok? (Nie obrazil bym sie za poprawki w kodzie rolleyes.gif )
kwiateusz
tu jest chyba poprawnie bo jest tam w kodzie

  1. <?php
  2. // Na wypadek wyłączonego parametru register globals.
  3. $imie = $_POST['imie'];
  4. $nazwisko = $_POST['nazwisko'];
  5. $email = $_POST['email'];
  6. $haslo = $_POST['haslo'];
  7. $potwierdzenie = $_POST['potwierdzenie'];
  8. $miesiac = $_POST['miesiac'];
  9. $dzien = $_POST['dzien'];
  10. $rok = $_POST['rok'];
  11. $kolor = $_POST['kolor'];
  12. ?>
erix
mozna jeszcze tak:
  1. <?php
  2.  
  3. foreach($_POST as $k=>$v){
  4. eval('$'.$k.' = $_POST["'.$k.'"]');
  5. }
  6.  
  7. ?>

PS. Kod pisany a'vista smile.gif
Felix-thewebmaster
""tu jest chyba poprawnie bo jest tam w kodzie

  1. <?php
  2. // Na wypadek wyłączonego parametru register globals.
  3. $imie = $_POST['imie'];
  4. $nazwisko = $_POST['nazwisko'];
  5. $email = $_POST['email'];
  6. $haslo = $_POST['haslo'];
  7. $potwierdzenie = $_POST['potwierdzenie'];
  8. $miesiac = $_POST['miesiac'];
  9. $dzien = $_POST['dzien'];
  10. $rok = $_POST['rok'];
  11. $kolor = $_POST['kolor'];
  12. ?>
""

Przeciez dokladnie tak ja mam wiec wychodzi ze nie trzeba zmieniac nic a chyb atrzeba bo jest zle wiec co trzeba zmienic? Ew. poprawcie moj kod
Master Miko
A może tak popatrzeć w kod strony? Wszystko masz schrzanione!!


Kod
<form action="test.php"
method=&quot;post&quot;>

<p>Imie: <input type="text" name="imie"
size=&quot;20&quot; /></p>

<p>Nazwisko: <input type="text" name="nazwisko"
size=&quot;20&quot; /></p>

<p>Adres e-mail: <input type="text" name="email"
size=&quot;20&quot; /></p>

<p>Hasło: <input type="password" name="haslo"
size=&quot;20&quot; /></p>

<p>Potwierdz hasło: <input type="password" name="potwierdzenie"
size=&quot;20&quot; /></p>
Felix-thewebmaster
I co jest zle?
Master Miko
Popatrz w kod?! (tzw. źródło strony)

Prawie wszędzie masz
Cytat
&quot;


Nie wiem coś ty tam zrobił, ale nie jest to prawidłowe zapisanie. Musi być zwykłe - " (cudzysłów)
erix
Master Miko, ja jakos widze listing bez encji dla cudzyslowow... (chyba, ze poprawil)
Felix-thewebmaster
Bo tak tu jest ale na prawde mam z cudzyslowami wiec co jest zle?
EDIT:
Teraz widac button ale jak sie rejerstruje to sami popatrzcie... www.test-privacy.yoyo.pl/rejerstracja.html I co z tym zrobic?
Master Miko
Chodziło mi o źródło strony: www.test-privacy.yoyo.pl/rejerstracja.html - coś musisz mieć schrzanione w kodzie html! Połowa strony jest ok a druga nie. Przekopiuj plik "rejestracja.html" jeszcze raz na serwer w takiej postaci w jakiej dałeś na forum...

ZOBACZ SOURCE ( na samym dole | source = tyle co widzi przeglądarka internetowa)


Poza tym nie znasz podstaw HTMLa...

  1. <!--Listing 6.1--!>  // źle
  2.  
  3. <!-- Listing 6.1 --> // dobrze
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.