<html>
<form action="find.php" method="post">
action:
<select name="action"> action
<option valuе="zero"> deny</option>
<option valuе="one"> permit</option>
</select> <br>
source_ip:
<input type="text" name="source_ip" size="30" maxlength="30" value=""> <br>
source_port:
<input type="text" name="source_port" size="30" maxlength="30" value=""> <br>
dest_ip:
<input type="text" name="dest_ip" size="30" maxlength="30" value=""> <br>
dest_port:
<input type="text" name="dest_ip" size="30" maxlength="30" value=""><br>
protocol type:
<select name="protocol"> protocol
<option valuе="tcp"> tcp
<option value="udp"> udp
<option value="icmp"> icmp
<option value="ip"> ip
</select>
<br>
<input type="submit" name="submit" value="Search"><br>
<br>
<br>
<br>
<br>
</form>
</html>
вопрос: возможно ли в select сделать так, чтобы отображалось Deny или Allow, а реальное значение было 0 и 1.
<?php
$action=$_POST['action'];
$protocol=$_POST['protocol'];
$source_port=$_POST['source_port'];
$source_ip=$_POST['source_ip'];
$dest_ip=$_POST['dest_ip'];
$dest_port=$_POST['dest_port'];
echo $action;
// Файл firstsql.php
$host='localhost'; // имя хоста
$database='hesk'; // имя базы
$user='test'; // имя,
$pswd='123456'; // пароль
$dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
$query = "SELECT * FROM `acl` WHERE source_ip LIKE '$source_ip%' AND protocol='$protocol' AND source_port='$source_port%' AND source_ip='$source_ip%' AND dest_ip='$dest_ip%' AND dest_port='$dest_port%'" ;
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
{
echo "number: ".$row['number']."<br>\n";
echo "action: ".$row['action']."<br>\n";
echo "protocol: ".$row['protocol']."<br>>\n";
echo "source_ip: ".$row['source_ip']."<br>\n";
echo "source_port: ".$row['source_port']."<br>\n";
echo "dest_ip: ".$row['dest_ip']."<br>\n";
echo "dest_port: ".$row['dest_port']."<br><hr>\n";
}
?>
Как реализовать сложный запрос (несколько условий). Так не работает.
Спустя 8 часов, 17 минут, 48 секунд (17.06.2012 - 11:21) Fr05t1k написал(а):
Мне одному не понятно что требуется?
Спустя 36 минут, 34 секунды (17.06.2012 - 11:58) varvar написал(а):
требуется вывести список кому запрещено и кому нет? трудно понять задачу...
может быть это ты имел ввиду?
может быть это ты имел ввиду?
$query = "SELECT * FROM `acl` WHERE source_ip LIKE '$source_ip%' AND protocol='$protocol' AND source_port='$source_port%' AND source_ip='$source_ip%' AND dest_ip='$dest_ip%' AND dest_port='$dest_port%' AND action='".($action=="zero"?"0":"1")."'" ;
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
{
echo "number: ".$row['number']."<br>\n";
echo "action: ".($row['action']=="0"?"Deny":"Allow")."<br>\n";
echo "protocol: ".$row['protocol']."<br>>\n";
echo "source_ip: ".$row['source_ip']."<br>\n";
echo "source_port: ".$row['source_port']."<br>\n";
echo "dest_ip: ".$row['dest_ip']."<br>\n";
echo "dest_port: ".$row['dest_port']."<br><hr>\n";
}
?>
Спустя 10 минут, 38 секунд (17.06.2012 - 12:08) Placido написал(а):
Цитата (mike_ @ 17.06.2012 - 03:03) |
вопрос: возможно ли в select сделать так, чтобы отображалось Deny или Allow, а реальное значение было 0 и 1. |
Если это имеется в виду:
<option valuе="0">Deny</option>
<option valuе="1">Allow</option>
Только не забываем, что из поста приходят строковые значения ('0' и '1', а не 0 и 1).
Спустя 46 минут, 23 секунды (17.06.2012 - 12:55) mike_ написал(а):
в столбце action - 0 или 1.
Цитата |
<option valuе="0">Deny</option> <option valuе="1">Allow</option> |
А какого назначение value, если из поста придет Deny.
тут наверное стоит так сделать:
if ($_POST['action'] = 'allow') {$action = '1';}
if ($_POST['action'] = 'deny') {$action = '0';}
проблема 2:
Цитата |
$query = "SELECT * FROM `acl` WHERE source_ip LIKE '$source_ip%' AND protocol='$protocol' AND source_port='$source_port%' AND source_ip='$source_ip%' AND dest_ip='$dest_ip%' AND dest_port='$dest_port%'" ; |
такой запрос не срабатывает.
Спустя 39 минут, 43 секунды (17.06.2012 - 13:34) Placido написал(а):
Цитата (mike_ @ 17.06.2012 - 12:55) |
в столбце action - 0 или 1. <option valuе="0">Deny</option> <option valuе="1">Allow</option>[/QUOTE] А какого назначение value, если из поста придет Deny. тут наверное стоит так сделать:
|
В $_POST['action'] придет либо '0', либо '1'. 'Deny' и 'Allow' придет только в том случае, если не будет указано value.
Спустя 14 минут, 43 секунды (17.06.2012 - 13:49) mike_ написал(а):
Цитата (Placido @ 17.06.2012 - 10:34) |
[QUOTE=mike_,17.06.2012 - 12:55] в столбце action - 0 или 1. <option valuе="0">Deny</option> <option valuе="1">Allow</option>[/QUOTE] А какого назначение value, если из поста придет Deny. тут наверное стоит так сделать: [/QUOTE] В $_POST['action'] придет либо '0', либо '1'. 'Deny' и 'Allow' придет только в том случае, если не будет указано value./option |
а приходит deny или allow
Спустя 10 минут, 40 секунд (17.06.2012 - 14:00) Placido написал(а):
Цитата (mike_ @ 17.06.2012 - 13:49) |
а приходит deny или allow |
Значит, ищите ошибку в html.
Спустя 5 минут, 52 секунды (17.06.2012 - 14:06) mike_ написал(а):
<select name="action"> action
<option value="0"> deny</option>
<option value="1"> permit</option>
</select>
вот весь код
Спустя 11 минут, 43 секунды (17.06.2012 - 14:17) Placido написал(а):
Не смущает, что последняя е не подсвечивается зелененьким? Это от-того, что это кириллическая е, замените на латинскую e, и все будет в порядке.
Спустя 2 минуты, 22 секунды (17.06.2012 - 14:20) mike_ написал(а):
о ,спасибо.
терь осталось разобраться с запросом.
терь осталось разобраться с запросом.
Спустя 2 минуты, 7 секунд (17.06.2012 - 14:22) T1grOK написал(а):
Цитата (mike_ @ 17.06.2012 - 10:49) |
а приходит deny или allow |
АЛЕЕ! :)
Приходит все нормально. Вы присваиваeте значения сами
if ($_POST['action'] = 'allow')
= оператор присвоения, здесь нужно сравнения - ==;