Opisze dokładnie jak co robię, bo coś zauważyłem ale dalej nei wiem dlaczego tak jest:
1. Mam klase (która jest includowana do pliku zakładanie_konta.php). W tej klasie jest funkcja PustePole , która sprawdza czy jest puste pole czy nie.
<?php
function PustePole($ciag,$komunikat){
if(strlen($ciag) == 0 AND
$_GET['action'] == 'check'){ echo "<font color='red'>$komunikat</font>"; if($komunikat == 'Podaj Imie'){
$this->error = 1;
}
}
else if(strlen($ciag) != 0
&& $_GET['action'] == 'check') { if($komunikat == 'Podaj Imie' ){
$this->error = 2;
}
}
}
?>
I tak się składa żę jak jest puste pole to widzę na ekranie jest puste pole, wtedy przypisuję do zmiennej error 1, w przeciwnym wypadku wypisuje jest pelne i do zmiennej przypisuję 2. Teraz przechodzimy do pliku zakładanie_konta.
<?php
include "class.KontrolerBledow.php";
?>
<html xmlns="http://www.w3.org/1999/xhtml" lang="pl">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2"/>
<link rel="stylesheet" type="text/css" media="all" href="arkusz.css"/>
</head>
<body>
<div id="upbg"></div>
<div id="outer">
<div id="header">
<div id="headercontent">
</div>
</div>
<div id="headerpic"></div>
<div id="menu">
<ul>
<li><a href="#">Wydarzenia</a></li>
<li><a href="#" class="active">Nowinki</a></li>
<li><a href="#">Znajomi</a></li>
<li><a href="#">Wiadomosci</a></li>
</ul>
</div>
<div id="menubottom"></div>
<div id="left_menu">
<div class="menuu">
<h6>Nowosc:</h6>
</div>
<hr/>
<div class="menuu">
<h6>Ciekawostki</h6>
</div>
</div>
<div id="logowanie">
<div class="menuu">
<h6>Nowosc:</h6>
</div>
<hr/>
<div class="menuu">
<h6>Ciekawostki</h6>
</div>
</div>
<div id="formularze">
<form action="
<?php echo $_SERVER['PHP_SELF'];?>?action=check" id="formularzyk" method="post">
<h2>Dane Klienta</h2>
<table class="danepodstawowe">
<?php
if(!$Kontroler->JestError() && $_GET['action'] == 'check'){
echo "sa bledy w tablicy" , $Kontroler->JakaLiczba(),"."; }
else if($_GET['action']== 'check' && $Kontroler->jestError()){
echo "nie ma bledow w tablicy"; }
?>
<tr>
<td class="label"><label for="firstname">Imie:</label></td>
<td class="value"><input type="text" name="firstname" value="<?=$firstname?>" id="firstname"/></td>
<td class="remarks">wymagane
<span class="errors">
<?php
$Kontroler->PustePole($_POST['firstname'],'Podaj Imie');
?>
</span>
</tr>
</table>
<input type="submit" name="Zaloz konto" value="Zaloz konto" id="nowekonto"/>
</form>
</div>
</div>
</body>
</html>
I tak , na ekranie widzę napisy że że pole jest puste albo jest pełne, w tej samej funkcji przypisuję 1 albo 2. A jak sprawdzam jaka wartośc jest to tam nic nie ma!!!!
<?php
if(!$Kontroler->JestError() && $_GET['action'] == 'check'){
echo "sa bledy w tablicy" , $Kontroler->JakaLiczba(),"."; }
?>
W tym momencie widzę taki napis : "sa bledy w tablicy." , tak jakby tej zmiennej nie było. Zrobiłem w klasie funkcję
<?php
function UstawLiczba($liczba){
$this->error =$liczba;
}
?>
następnie próbuję ustawić liczbę 5 to wszystko pięknie dziąła i pokazuje mi 5, a jak ma ustawić w samej funkcji 1 albo 2 to tak jakby nic się nei wyświetla.
<?php
if(!$Kontroler->JestError() && $_GET['action'] == 'check'){
$Kontroler->UstawLiczba(5);
echo "sa bledy w tablicy" , $Kontroler->JakaLiczba(),"."; }
?>
Proszę o pomoc!