Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: if..if..else - упростить или отладить.
 
 автор: Arkanum   (11.02.2006 в 17:06)   письмо автору
 
 

Есть такая вещь. Интересуют варианты упрощения или отладки данной обработки. Мне не очень кажется хорошей и достаточно громосткая. Плюс если обрабатывать данные через этот вариант, пункт else выскакивает в любом случае. Значит в организации какие то проблемы.


<?php

$kom1 
htmlspecialchars(stripslashes($_POST['kom1']));
$kom2 htmlspecialchars(stripslashes($_POST['kom2']));

$kom1_rez htmlspecialchars(stripslashes($_POST['kom1_rez']));
$kom2_rez htmlspecialchars(stripslashes($_POST['kom2_rez']));

echo 
$kom1." - ".$kom2." Счёт: ";
echo 
$kom1_rez.":".$kom2_rez;

echo 
"<br><br>";

if (
$kom1_rez $kom2_rez) {
echo 
$kom1." - 3 очка <br />";
echo 
$kom2." - 0 очков";
}

if (
$kom1_rez $kom2_rez) {
echo 
$kom1." - 0 очков <br />";
echo 
$kom2." - 3 очка";
}

else {
echo 
$kom1." - 1 очко <br />";
echo 
$kom2." - 1 очко";
};

?>

   
 
 автор: kasmanaft   (11.02.2006 в 17:49)   письмо автору
 
   для: Arkanum   (11.02.2006 в 17:06)
 

else не может выскакивать в любом случае :) на то он и else...
как я понял else - это когда $kom1_rez равно $kom2_rez... так?
тогда можно написать

if ($kom1_rez == $kom2_rez) {
echo $kom1." - 1 очко <br />";
echo $kom2." - 1 очко";
};

не понятно, что токое ваапще ваши эти комы... комманды что ли?
победа 3 очка а проигрыш 0? когда равны по одному очку, так?

   
 
 автор: Arkanum   (11.02.2006 в 17:56)   письмо автору
 
   для: kasmanaft   (11.02.2006 в 17:49)
 

да. верно.
сейчас подумал, решил сделать через require_once. вот посмотри. проверил - работает.


<?php

$kom1 
htmlspecialchars(stripslashes($_POST['kom1']));
$kom2 htmlspecialchars(stripslashes($_POST['kom2']));

$kom1_rez htmlspecialchars(stripslashes($_POST['kom1_rez']));
$kom2_rez htmlspecialchars(stripslashes($_POST['kom2_rez']));

echo 
$kom1." - ".$kom2." Счёт: ";
echo 
$kom1_rez.":".$kom2_rez;

echo 
"<br><br>";

if ((
$kom1_rez $kom2_rez) or ($kom1_rez $kom2_rez)) {
require_once (
'table_if.php');
} else {

echo 
$kom1." - 1 очко <br />";
echo 
$kom2." - 1 очко";
};

?>


файл table_if.php уже и ведёт проверку через единичные if ... else.
видимо в первом варианте два IF давало сомнение в дальнейшем движении на ELSE :)

table_if.php:


<?

if ($kom1_rez $kom2_rez) {
echo 
$kom1." - 3 очка <br />";
echo 
$kom2." - 0 очков";
} else {

echo 
$kom1." - 0 очков <br />";
echo 
$kom2." - 3 очка";
}

?>

   
 
 автор: kasmanaft   (11.02.2006 в 18:05)   письмо автору
 
   для: Arkanum   (11.02.2006 в 17:56)
 

зачем??? зачем усложнять код? его читаемость....

<?php 
$kom1 
htmlspecialchars(stripslashes($_POST['kom1'])); 
$kom2 htmlspecialchars(stripslashes($_POST['kom2'])); 

$kom1_rez htmlspecialchars(stripslashes($_POST['kom1_rez'])); 
$kom2_rez htmlspecialchars(stripslashes($_POST['kom2_rez'])); 

echo 
$kom1." - ".$kom2." Счёт: "
echo 
$kom1_rez.":".$kom2_rez

echo 
"<br><br>"

if (
$kom1_rez $kom2_rez) { 
echo 
$kom1." - 3 очка <br />"
echo 
$kom2." - 0 очков"


if (
$kom1_rez $kom2_rez) { 
echo 
$kom1." - 0 очков <br />"
echo 
$kom2." - 3 очка"


if (
$kom1_rez == $kom2_rez) {
echo 
$kom1." - 1 очко <br />"
echo 
$kom2." - 1 очко"
};

?> 


а что делает table_if.php? что то очень нужное?

   
 
 автор: Arkanum   (11.02.2006 в 18:26)   письмо автору
 
   для: kasmanaft   (11.02.2006 в 18:05)
 

гы.. спасиб. $kom1_rez == $kom2_rez помогло. :)
в таком случае не нужно ничего.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования