Belka pozioma na stronie

Powiedzcie mi prosze, dlaczego tutaj http://www.history.is.net.pl/?register gdy wypełnie tylko jedno pole w formularzu i dam wyślij to wtedy wyskakuje mi przykladowo takie cos:

Nazwa użytkownika: value="tadzia"

Albo jak tylko wpisze miejscowość w pole Skąd i dam wyślij to wtedy wyskakuje mi to:

Skąd: value="kipszna"

Możecie mi w tym pomóc ? tak wyglada moj plik:

<?php

session_start();

function formularz(){

   global $_POST,$e;

   echo '';

   if(isset($e[0])){

      echo "";

   }

   echo '
Nazwa użytkownika:
$e[nazwa]"; } echo 'Hasło: '."\n"; if(isset($e['haslo'])){ echo "$e[haslo]"; } echo 'Adres e-mail: '; if(!empty($\_POST['mail'])){ echo " value=\"$\_POST[mail]\""; } if(isset($e['mail'])){ echo "$e[mail]"; } echo 'Numer Gadu-Gadu: '; if(!empty($\_POST['gg'])){ echo " value=\"$\_POST[gg]\""; } if(isset($e['gg'])){ echo "$e[gg]";

}

echo 'Skąd: ';

if(!empty($_POST[‘skad’])){

  echo " value=\"$_POST[skad]\"";

}

if(isset($e[‘skad’])){

  echo "<small>$e[skad]";

}

echo ’
‘; echo „\n”; } if(isset($_POST[‘nazwa’])){ if(empty($_POST[‘nazwa’]) or empty($_POST[‘haslo’]) or empty($_POST[‘mail’]) or empty($_POST[‘gg’]) or empty($_POST[‘skad’])){ $e[]=‘Niewypelniles wszystkich pol formularza.’; }else{ $dir=md5($_POST[‘nazwa’]); if(file_exists(„db/$dir.php”)){ $e[‘nazwa’]=‘Podana nazwa użytkownika jest zajęta.’; }elseif(strlen($_POST[‘nazwa’])<=3 or strlen($_POST[‘nazwa’])>20){ $e[‘nazwa’]=‘Długoć nazwy użytkownika musi być od 3 do 20 znaków.’; } if(empty($_POST[‘haslo’])){ $e[‘haslo’]=‘Hasło nie może być puste.’; } if(!preg_match(„/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$/”, $_POST[‘mail’])){ $e[‘mail’]=‘Adres E-mail jest niepoprawny.’; } if(!is_numeric($_POST[‘gg’])){ $e[‘gg’]=‘Numer GG jest niepoprawny.’; } } if(!isset($e)){ $nazwa=addslashes($_POST[‘nazwa’]); $haslo=md5($_POST[‘haslo’]); $mail=addslashes($_POST[‘mail’]); $handle=fopen(„db/$dir.php”,‘w+’); fwrite($handle,"<?php $user[’$nazwa’]=array(‘password’=>‘$haslo’,‘mail’=>‘$mail’,‘gg’=>‘$_POST[gg]’,‘skad’=>‘$_POST[skad]’); ?>"); fclose($handle); $_SESSION[‘login’]=$_POST[‘nazwa’]; die(„Zostałeś zarejestrowany i automatycznie zalogowany jako $_POST[nazwa].”); }else{ formularz(); } }else{ formularz(); } ?>[/code]

Nie rozumiem problemu, albo u mnie nic się nie wyświetla dziwnego

  1. Z tym sobie poradziłem już natomiast nie rozumie dlaczego pod nazwa użytkownika wyswietlająca się informacja typu:

    Długość nazwy użytkownika musi być od 3 do 20 znaków.

Nie jest ona napisana w jewdnej linijce tak jak powyżej tylko w ten sposób:

Długość nazwy użytkownika musi być od 3 do 20

znaków.

Nie wiem jak to zrobic żeby to było w jednej linijce napisane: tak wyglada moj plik register.php

<?php

session_start();

function formularz(){

   global $_POST,$e;

   echo '';

   if(isset($e[0])){

      echo "";

   }

   echo '
Nazwa użytkownika:
$e[nazwa]"; } echo 'Hasło: '."\n"; if(isset($e['haslo'])){ echo "$e[haslo]"; } echo 'Adres e-mail: '; if(!empty($\_POST['mail'])){ } if(isset($e['mail'])){ echo "$e[mail]"; } echo 'Numer Gadu-Gadu: '; if(!empty($\_POST['gg'])){ } if(isset($e['gg'])){ echo "$e[gg]";

}

echo 'Skąd: ';

if(!empty($_POST[‘skad’])){

}

if(isset($e[‘skad’])){

  echo "<small>$e[skad]";

}

echo ’
‘; echo „\n”; } if(isset($_POST[‘nazwa’])){ if(empty($_POST[‘nazwa’]) or empty($_POST[‘haslo’]) or empty($_POST[‘mail’]) or empty($_POST[‘gg’]) or empty($_POST[‘skad’])){ $e[]=‘Niewypelniles wszystkich pol formularza.’; }else{ $dir=md5($_POST[‘nazwa’]); if(file_exists(„db/$dir.php”)){ $e[‘nazwa’]=‘Podana nazwa użytkownika jest zajęta.’; }elseif(strlen($_POST[‘nazwa’])<=3 or strlen($_POST[‘nazwa’])>20){ $e[‘nazwa’]=‘Długość nazwy użytkownika musi być od 3 do 20znaków.’; } if(empty($_POST[‘haslo’])){ $e[‘haslo’]=‘Hasło nie może być puste.’; } if(!preg_match(„/^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+$/”, $_POST[‘mail’])){ $e[‘mail’]=‘Adres E-mail jest niepoprawny.’; } if(!is_numeric($_POST[‘gg’])){ $e[‘gg’]=‘Numer GG jest niepoprawny.’; } } if(!isset($e)){ $nazwa=addslashes($_POST[‘nazwa’]); $haslo=md5($_POST[‘haslo’]); $mail=addslashes($_POST[‘mail’]); $handle=fopen(„db/$dir.php”,‘w+’); fwrite($handle,"<?php $user[’$nazwa’]=array(‘password’=>‘$haslo’,‘mail’=>‘$mail’,‘gg’=>‘$_POST[gg]’,‘skad’=>‘$_POST[skad]’); ?>"); fclose($handle); $_SESSION[‘login’]=$_POST[‘nazwa’]; die(„Zostałeś zarejestrowany i automatycznie zalogowany jako $_POST[nazwa].”); }else{ formularz(); } }else{ formularz(); } ?>[/code] 2. Gdybym chciał sobie zrobic te informacje w kolorach jakiś to moge np. w tym miejscu:

[code]die(„Zostałeś zarejestrowany i automatycznie zalogowany jako $_POST[nazwa].”);
Zastosowac div id i zrobic to w css ? np. tak:

die("

Zostałeś zarejestrowany i automatycznie zalogowany jako $_POST[nazwa].
");[/code]

I do tego jakis css. Mozna tak ?

No i teraz mogę pomóc, bo nie prosisz o gotowca, tylko pomoc. Co do pierwszego to

Co do drugiego-tak, możesz zrobić w ten sposób, ale nie

zamiast
, bo to element liniowy, nie blokowy :wink:

Moim zdaniem lepiej skrócić wyświetlany teks niż rozszerzać

div jest stosowany gdy w nim są jeszcze jakieś elementy a tutaj jest tylko jeden wiersz, bym zastosował akapit czyli

… span jest liniowy ale tutaj aż się prosi o akapit.

Możesz mi powiedziec jak skrócić ten tekst ? i Jak napisać go w akapicie ?

Prawda że sobie żartujesz zadając to pytanie? :wink:

Jeśli serio pytasz to brak Ci podstaw od podstaw.

W akapicie to nie wiem czy chodzi ci o cos takiego przykladowo:

Kliknij Tutaj, aby wrócić do komentarzy

A ten napis to jak mozna jeszcze inaczej napisac krocej ?

Długość nazwy użytkownika musi być od 3 do 20 znaków.

Np. tak

Mam takie jedno pytanie. W momencie gdy ktoś tutaj: http://www.history.is.net.pl/?register nie wpisze doslownie nic i da wyślij i gdy wyskoczy mu ten czerwony napis na różowym tle „Niewypełniłeś wszystkich pól formularza” to czy dało by się tylko w tym napisie troche skrócić to różowe tło ?

Tak żeby ładnie to wyglądało. Może ktoś mi pomóc ?

Nadaj temu szerokość :wink:

Niewypełniłeś wszystkich pól formularza.

[/code]

A możesz mi powiedzieć jak temu nadać szerokość ? bo ani height ani width mi tutaj nie pasuje.

Co to znaczy że nie pasuje?

width = szerokość a napisałeś że chcesz tło zmniejszyć.

Puma bo jak w moim kodzie dodam width to nic się nie dzieje. A chce tło różowe troche skrócić.

Niewypełniłeś wszystkich pól formularza.

[/code]

Nie wiem co jest nie tak.

Podany kod działa poprawnie… nadaj szerokość w granicy rozsądku bo teraz napis ścieśniasz jak śledzie w beczce :smiley:

Puma ok, już działa. A możesz mi powiedzieć taką jedną rzecz. W jaki sposób zrobić tak, że jak jestem już zalogowany na mojej stronce i klikne w wyloguj to żeby na belce niebieskiej już nie pisało mi Jesteś już zalogowany jako Darom82 , a pod tym drugi napis typu: Zostałeś wylogowany. Tak jak widać tu na Screenie

Tylko chciałbym, że jak kliknie się w wyloguj to żeby zamiast tych dwóch napisów znowu pojawiało się na belce pola z podaniem hasła i loginu.

Wiesz może jak to u mnie zrobić ?

Tak wygladaja moje pliki:

login.php

<?php

session_start();

if(isset($_SESSION['login'])){

   echo "Jesteś już zalogowany jako $_SESSION[login]";

}elseif(!isset($_POST['nazwa']) or !isset($_POST['haslo'])){

?>

Login:


Hasło:





<?php

}else{

   $dir=md5($_POST['nazwa']);

   if(file_exists("db/$dir.php")){

      include("db/$dir.php");

   }

   if(!isset($user[$_POST['nazwa']]) or $user[$_POST['nazwa']]['password']!=md5($_POST['haslo'])){

      echo 'Niepoprawna nazwa użytkownika lub hasło.';

   }else{

      $_SESSION['login']=$_POST['nazwa'];

      echo "Zostałeś zalogowany jako $_SESSION[login].";

   }

}

?>

logaut.php

<?php

session_start();

if(!isset($_SESSION['login'])){

   echo 'Nie jesteś zalogowany.';

}else{

   unset($_SESSION['login']);

   echo 'Zostałeś wylogowany.';

}

?>