Jump to content
php.lv forumi

Ziņot par neaizpildītiem laukiem.


Recommended Posts

Posted (edited)

Hello.

Problēma šāda ,man ir divi lauki - "Autors" un "Komentārs" ,gribu lai ir tā ,ka ja abi lauki nav aizpildīti tad izmet paziņojumu ,ka nav aizpildīts tas un tas.

 

Kods apmēram šāds ,pēc manām domām ,zinu ,ka domāju nepareizi - Spied!

 

Paldies.

 

Edit: Varbūt labāk tomēr būtu ar JS?

Edited by iall
Posted

Ja tu paļausies tikai uz JS, tad tas ir tik pat kā vispār bez aizsardzības. Serverpuses pārbaude ir A MUST, bet ar JS vari pārbaudīt, lai nav lieku datu dzenāšana un klientam ērtāk.

 

Un kodu astakos pētīt, kamēr nebūsi normāli saindentējis.

Posted (edited)

Nu tipa nevis

		  $x = 1;

 if ($x = 1) {
echo 'bla';
		} else
{
echo 'asd'; }

 

bet gan normaali sakaartots kods:

$x = 1;

if ($x == 1) {
 echo 'bla';
} else {
 echo 'asd';
}

Edited by andrisp
Posted

Tāpat galīgi garām sakārtoji, bet nu labi ;)

 

Šo

if (!$_POST['author'] | !$_POST['comment'] ) {

 

Raksti labāk kaut kā šādi:

if (empty($_POST['author']) || empty($_POST['comment'])) {

 

PS.

 

Viena līmeņa kodu raksti ar vienādu atkāpi no malas. Un katru nākamo apakšlīmeni (piem., if saturu) raksti par dažiem simboliem tālāk no atkāpes.

 

Piemēram:

lala
bleble
if (bla) {
 lala
 bleble
 cikls() {
lala2
 }
}
lele
blala

Posted (edited)

Ok ,pamēģināšu.Un par to kodu - likšu aiz auss. Viss ļoti skaisti ,tikai tagad komentāri vispār nerādās> :/

Edited by iall
Posted

Tev tur vispār kautkas šķiet nogājis pa pieskari

Domāju - salabošu. Bet kad ķēros klāt, sāku skatīties, kas tur notiek, vispār sagāja putrā.

Tev cikls itkā tiek iesāks while(...), taču, kur paliek {} ?

Tālāk -> Ja tev komentāri vispār tiktu parādīti, tad arī tikai gadījumā ja kautkas tiek postēts.

Posted

Vajag nedaudz modificēt, bet nu doma aptuveni skaidra (laikam?)

<?
 if(isset($_POST['submit'])){
  if(!empty($_POST['author']) && !empty($_POST['comment'])){
  $addsql="INSET INTO `comments` (author,comment,blogid) VALUES ('".mysql_real_escape_string($_POST['author'])."','".mysql_real_escape_string($_POST['comment'])."','".intval($row['id'])."')";
  mysql_query($addsql);
  }else{
  echo 'Ieraksti vārdu un komentāru!';
  }
 }
 $sql2="SELECT author, comment FROM `comments` WHERE blogid='".intval($row['id'])."' ORDER BY id ASC";
 $res2=mysql_query($sql2);
 while($row2=mysql_fetch_object($res2)){
  echo '
  <p class="kastes"><b>'.htmlspecialchars($row2->author).'</b> teica:<br />'.htmlspecialchars($row2->comment).'</p>
  ';
 }
?>

Posted (edited)

Viss strādā. Tikai problēma ir tāda ,ka postojot komentāru parādās "Ieraksti vārdu un komentāru" UN iepostojās arī tukšais komentārs ,paliek komentāra laukā tikai "teica:"!Paskatīšos ,paeksperimentēšu :)

 

Liels paldies ,tiešām noderēja.

Edited by iall
Posted

Formā man ir šie divi lauki ,pārskatījos arī kodu ,varbūt kāda neuzmanības kļūda ,bet nekā.

×
×
  • Create New...