PDA

View Full Version : ape masalah coding ni? tolong check bollean...


kotaku
10-04-03, 08:00 PM
<html>
<head>
<title>Testing PHP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<?php

$db=mysql_connect("scettech.sund.ac.uk","username","password");
mysql_select_db("cb1nar_db",$db);

mysql_query("SELECT * FROM $aboutapar",$db);

if ((($sadd || $sddd) == '31') && ($monthyear == 'Jun,2003' || 'Sep,2003' || 'Nov,2003' || 'Feb,2003' || 'Apr,2003')) {
echo ("Dates are not recognizable. Please click back to select again.");
}
else {
$ida = mysql_query("SELECT * FROM $aboutapar WHERE (day=$sadd) && (monthyear=$sammyy)",$db);
while ($arr = mysql_fetch_array($ida)) {
$arr = $dayfirst;
}

$idd = mysql_query("SELECT * FROM $aboutapar WHERE (day=$sddd) && (monthyear=$sdmmyy)",$db);
while ($dep = mysql_fetch_array($idd)) {
$dep[id] = $daylast;
}

for ($totalnight=$dayfirst; $totalnight<=$daylast; $totalnight++)
$totalnight;

echo("totalnight = $totalnight");

$price = mysql_query("SELECT * FROM $aboutapar",$db);
while ($pricepernight = mysql_fetch_array($price)) {
$pricepernight[deposit] = $pernight;
}

$totalamount = $pernight * $totalnight;

if ($totalnight <= 3) {
echo ("Sorry! Minimum of stay is 3 nights. Please click back & select new Arrival or Departure date.<br>");
}
elseif ($totalnight >= 3) {
while ($avai = mysql_fetch_array($ida)) {
if ($avai[id] == $dayfirst) && ($availibility == open)
$dayfirst++;
}
elseif {
echo ("Sorry! The chosen apartment has already been booked between the selected date.<br>") ;
echo ("We suggest you either:<br>");
echo ("a) Select a different Arrival or Departure date, or<br>");
echo ("b) Select a different Type of Apartment<br>");
echo ("Back to Check Availibility Form<br>");
}
elseif ($dayfirst = $totalnight) {
echo ("Availibility has been found!<br>");
echo ("Apartment details: 1 master bedroom, $rooms twin bedrooms. Maximum person of $max<br>");
echo ("For $sadd $samm $sayy until $sddd $sdmm $sdyy. Total of $totalnight nights<br>");
echo ("Amount of first night rental: $pernight<br>");
echo ("Total Amount: $totalamount<br>");
echo ("Pay online now! or by Telephone/Fax<br>");
/* $totalnight, $totalamount, $pernight must be inserted to Customer */
}
}
}
?>

</body>
</html>

--------------

fed up arrrr

[i]sorokkan usename dan password - B.H.
P/S: kotaku jangan putus asa. Kalu aku ader masa aku tengok&sup2;kan. Panjang giler kod nye :)

Diskuzar
11-04-03, 07:50 AM
Posting asal oleh kotaku

if ((($sadd || $sddd) == '31') && ($monthyear == 'Jun,2003' || 'Sep,2003' || 'Nov,2003' || 'Feb,2003' || 'Apr,2003')) {
.
.
.
.
if ($avai[id] == $dayfirst) && ($availibility == open)




disk tak berapa reti pakai PHP ... tapi yg line first tu leh le lebih 1 "(" ???

& line 2 tu leh ke tak ader "}" ??

just asking :)

bustamam
11-04-03, 08:07 AM
A'ah ek cekap mater ko Disk :) Hak yang kedua tu, "if" block tak perlu "{".."}" kalau ada cuma 1 statement jer dalam block tuh, so ko ader 2 opsyen: buang "}" yang tarak pasangan tuh, atau bagi pasangan kat dier "{", tapi dier punye condition pun kene boh dalam "("...")", contoh:

if (($avai[$id] == $dayfirst) && ($availability == "open"))

Aku still tak faham tentang condition nih:
($sadd || $sddd) == '31'
Apa sebenor nye ko nak wat? Kat sini maksudnye kalau $sadd tu tak NULL atau $addd tak NULL, tapi ($sadd || $sddd) tuh boolean, tak leh compare dengan '31', sebab "31" tu nombor/string.

Diskuzar
11-04-03, 08:51 AM
$sadd & $sddd tu tarikh tu .... dia mark 31 haribulan .. so ... maybe tu just limit sebab selection dia tu abih sampai 30 haribulan aje ... lain dari tarikh tu tak terima

echo ("Dates are not recognizable. Please click back to select again.");

bustamam
11-04-03, 09:01 AM
Oh kalu cam tu kena wat cam nih:
if ( ($sadd == '31' || $sadd == '31') && ($monthyear == 'Jun,2003' || $monthyear == 'Sep,2003' || $monthyear =='Nov,2003' || $monthyear == 'Feb,2003' || $monthyear == 'Apr,2003')) ...

Aku ader satu soklan, $sadd, $monthyear, dsb tu nilai nye datang dari maner? Rasa nye kene assign nilai nye sebelum check kat "if"... tuh. Kalu datang dari database query, assignkan nilai yang di database tuh ke variable yang berkenaan.

Diskuzar
11-04-03, 09:25 AM
kalau pakai array lagi nampak kemas kot .. tah le .. pada disk le

$blocked = array(
"Jun,2003",
"Sep,2003",
"Nov,2003",
"Feb,2003",
"Apr,2003",
);

for ($i=0; $i<sizeof($blocked); $i++) {
if ("$blocked[$i]" == "$monthyear") {
echo ("Dates are not recognizable. Please click back to select again.");
}
}

bustamam
11-04-03, 10:07 AM
Aku suker pakai Regular Expression :) contoh:
if (preg_match("/^(Jun,2003|Sep,2003|Nov,2003|Feb,2003|Apr,2003)$/i", $monthyear, $match)) {
echo ($match . " is not recognized.");
}

Diskuzar
11-04-03, 10:10 AM
* Diskuzar lom sampai tahap bustaman lagi .... kira baru masuk tadika PHP le skang nie :)

bustamam
11-04-03, 10:15 AM
Posting asal oleh Diskuzar
* Diskuzar lom sampai tahap bustaman lagi .... kira baru masuk tadika PHP le skang nie :) Aku pun baru belajo PHP, tak caya tanye Sebol atau Sharuzzaman. Tu pun sebab nak wat webpage SingaEmas (http://oo-l10n-my.sourceforge.net), kalu tak memang sampai biler aku tak belajo aku kot :)

mnajem
18-04-03, 09:34 PM
aku dulu masuk tadika KEMAS,tak belajar php pun.....

cadangkan Kementerian Pendidikan letak php sebagai silibus... :p

//bro bustamam ni buat packet switching senang,ubah paradigm sket inter OOP-->Java,Perl,PHP.