【发布时间】:2017-09-17 00:53:50
【问题描述】:
大家好,
我需要一些 php 和 MySQL 查询方面的帮助。我有一个来自 GitHub 的人制作的应用程序,我想根据自己的需要进行一些修改。该应用程序是来自 pbxinaflash 的 FIAS-PMS,您可以为一个分机签入、签出和设置唤醒呼叫。目标是为办公室和客人使用的分机创建不同的报告。为客人工作完美。
代码如下所示:
$dbconnection = mysql_connect($dbhost, $dbuser, $dbpass) or die("Database connection failed");
mysql_select_db($dbname) or die("data base Hotel-Rooms open failed");
$query = "SELECT `ID`, `Desc` FROM `Rooms` ORDER BY `Desc` ASC";
$result = mysql_query($query) or die ("Couldn't execute SQL query on Hotel-Users table.") ;
mysql_close($dbconnection);
echo " <SELECT ID=\"RoomsComboBox\" NAME=\"RoomsComboBox\">";
echo "<OPTION VALUE=\"ALL\" SELECTED> ".$SecLab22." </OPTION>";
while ($row = mysql_fetch_array($result)) {
echo "<OPTION VALUE=\"$row[0]\">" . $row[1] . "</OPTION>";
}
echo "</SELECT>";
echo "</TD>" ;
echo "<TD><INPUT TYPE=\"SUBMIT\" NAME=\"SearchButton\" VALUE=\"".$SecLab21."\"></TD>\n" ;
echo "</TR>\n" ;
echo "</TABLE></div>\n";
echo "</FORM>\n";
if(isset($_POST['SearchButton'])) :
echo
"<TABLE cellSpacing=0 cellPadding=0 width=900 border=0>\n" ;
echo "<TR><TD>Id</TD><TD>".$SecLab7."</TD><TD>".$SecLab14."</TD><TD>".$SecLab15."</TD><TD>".$SecLab17."</TD><TD>".$SecLab31."</TD><TD>".$SecLab1."</TD>" ;
$dbconnection
= mysql_connect($dbhost, $dbuser, $dbpass) or die("Database connection failed");
mysql_select_db($dbname) or die("data base Hotel-Rates open failed");
$between = '';
$room = '';
$query = "SELECT * FROM `Users`";
$RoomsComboBox = $_POST['RoomsComboBox'];
$FROMD = $_POST['FROMD'] ;
$FROMM = $_POST['FROMM'] ;
$FROMY = $_POST['FROMY'] ;
$TOD = $_POST['TOD'] ;
$TOM = $_POST['TOM'] ;
$TOY = $_POST['TOY'] ;
if ($RoomsComboBox !== 'ALL') {
$room = " `Room` = '" . $RoomsComboBox . "'";
}
if ($FROMD !== '' AND $FROMM !== '' AND $FROMY !== '') {
$from = " `Checkout` >= '" . $FROMY . "-" . $FROMM . "-" . $FROMD . "'";
if ($TOD !== '' AND $TOM !== '' AND $TOY !== '') {
$to = " AND `Checkout` <= '" . $TOY . "-" . $TOM . "-" . $TOD . "'";
}
$between = $from . $to;
}
If ($between !== '' OR $room !== '') {
$query = $query . " WHERE" ;
}
If ($between !== '' AND $room !== '') {
$query = $query . $between . " AND" . $room;
}
If ($between !== '' AND $room == '') {
$query = $query . $between;
}
If ($between == '' AND $room !== '') {
$query = $query . $room;
}
$query = $query . " ORDER BY ID DESC";
//printf($query);
我做了什么: 来自
$query = "SELECT `ID`, `Desc` FROM `Rooms` ORDER BY `Desc` ASC" ;
到
$query = "SELECT `ID`, `Desc` FROM `Rooms` WHERE `Desc` = 'Frontoffice' OR `Desc` = 'Backoffice' OR `Desc` = 'Manager' ORDER BY `Desc` ASC" ;
来自
$query = "SELECT * FROM `Users`";
到
$query = "SELECT `ID`, `Desc` FROM `Rooms` WHERE `Desc` = 'Frontoffice' OR `Desc` = 'Backoffice' OR `Desc` = 'Manager' ORDER BY `Desc` ASC" ;
部分工作正常,我只能在组合框中看到办公室扩展,如果我从下拉列表中窥视“全部”,我可以搜索,但如果我选择其他内容,例如 Frontoffice 并单击搜索,则页面正在重播,但出现一个错误。
日期搜索根本不起作用。 我必须建议你们,我不知道 php 和 MySQL 只是一些非常基础的知识:) 请问有人可以帮我一些语法吗? 非常感谢。
在此处输入代码
【问题讨论】: