- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图返回一组由开始和结束 session 变量决定的值。该代码可以工作,但由于某种原因不会从初始变量返回任何内容。
例如如果输入范围 ABC001 到 ABC010,则返回 ABC002 - ABC010 中的所有值,则不会显示 ABC001 中的任何值。
当直接输入 SQL 时,我的查询工作得很好,而且我认为我还没有调用结果集,那么为什么第一组结果没有返回呢?
PS 我知道我使用过的很多功能已经/正在被弃用,但这是一个历史悠久的网站,我还没有准备好重写它。
<?php
require_once("includes/header2.php");
$title = "Box Contents";
require_once("includes/head2.php");
isLoggedIn();
// Catch session variables
$_SESSION['boxidStart'] = $_POST['boxContentsStart'];
$_SESSION['boxidEnd'] = $_POST['boxContentsEnd'];
// Define them as named variables for ease of use
$boxidStart = $_SESSION['boxidStart'];
$boxidEnd = $_SESSION['boxidEnd'];
// Box selection query
$sql = mysql_query ("SELECT boxId, fileNumber, dateEntered, destroyDate, invoiceStatus, invoiceDate FROM fields WHERE boxId BETWEEN '$boxidStart%' AND '$boxidEnd%' ORDER BY boxId ASC");
// SELECT Business
$companyName = mysql_query("SELECT business from fields LEFT JOIN users ON fields.CompanyId = users.Id WHERE boxId LIKE '$boxidStart%'");
$cn = mysql_fetch_row($companyName);
$no = 1;
if (!$boxidStart) {
?>
<div class="clearfix"></div>
<div>
<h2>You need to enter some text to search for!</h2>
<p>Please try again.</p>
<?php
require_once("includes/footer.php");
} else {
if (escape($boxidStart))
{
?>
<div class="clearfix"></div>
<div>
<h2 style="float:left;">Files Entered from range box <?php echo $boxidStart ?> to box <?php echo $boxidEnd ?></h2>
<!-- company name -->
<h2 style="float:right"><?php echo $cn[0] ?></h2>
<div>
<table class="results" cellpadding="3" cellspacing="0" border="1" width="100%">
<tbody align="left">
<tr>
<th>No.</th>
<th>Box No.</th>
<th>File Number</th>
<th>Date Entered</th>
<th>Destroy Date</th>
<th>Invoicing</th>
</tr>
<?php
while ($row = mysql_fetch_row($sql)) {
echo "<tr valign='middle' class='row'>
<td width='5%' class='company'>", $no++ ,"</td>
<td width='5%' class='company'>", $row[0] ,"</td>
<td width='30%' class='company'>", $row[1],"</td>
<td width='12.5%' class='datein'>", $new_date = date('d/m/Y', strtotime($row[2])), "</td>
<td width='12.5%' class='filenotes'>", $new_date = date('d/m/Y', strtotime($row[3])), "</td>";
// There must be a check in the history_files table to see if there is an entry for this fileNumber
// If there is an entry for this file number then it means that the file has already been in the system and the invoice has been paid
$sqlReturn = mysql_query ("SELECT fileNumber FROM history_files WHERE fileNumber = '$row[1]'");
$result = mysql_fetch_array($sqlReturn);
//var_dump($sqlReturn);
if ($result) {
// If the result is true the the text "Invoice has been paid"
echo "<td width='35%' class='filenotes'>Invoice already paid</td></tr>";
} else {
// If the result is false the the text "Invoice Charge €25.00" plus VAT
echo "<td width='35%' class='filenotes'>Invoice charge €25.00 + VAT</td></tr>";
}
}
//echo "<p>".mysql_num_rows($sql)." results<p>";
?>
</tbody>
</table>
<p><strong><br><br>Signed:</strong>________________________________<br><br></p>
<p><strong>Dated:</strong> <?php echo date('d/m/Y', strtotime($dateEntered)); ?></p>
<br><br>
</div>
<?php require_once("includes/foot.php"); } }?>
最佳答案
正在运行的查询包含此子句:
BETWEEN '$boxidStart%' AND '$boxidEnd%'
但是 BETWEEN
正在进行字符串比较,而不是 LIKE
。按字母顺序排列,ABC001 出现在 ABC001% 之前,因此您期望的第一行与查询不匹配。
关于php - mysql_fetch_row 循环不返回第一组结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19518881/
这个问题在这里已经有了答案: mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows etc... expec
我有一个函数可以查询数据库并计算其中的行数。 if($action=='shipping_list') { $row; $shipping=shipping_list(); $
我试图返回一组由开始和结束 session 变量决定的值。该代码可以工作,但由于某种原因不会从初始变量返回任何内容。 例如如果输入范围 ABC001 到 ABC010,则返回 ABC002 - ABC
$sql = "SELECT `description`,`auction_id` FROM `auctions` WHERE `description` REGEXP '(97(8|9))?[[:
mysql_fetch_row当有结果时返回一个数组,当没有更多行时返回 false。 但是,当运行命令时出现与连接相关的错误时,预期的行为是什么? 或者更确切地说,我应该问...mysql_fetc
一头雾水,不知道怎么回事。我要将所有数据从我的第一个表传输到另一个表。这是我的代码: $getdata = mysql_query("SELECT Quantity, Description, Tot
这两个函数,返回的都是一个数组,区别就是第一个函数返回的数组是只包含值,我们只能$row[0], $row[1],这样以数组下标来读取数据,而mysql_fetch_array()返回的
我想要 make 函数来检查特定数据是否在 mysql 的 mydb 中。我写了下面的函数,但我在这行出现错误 $is_ok_array=mysql_fetch_row($is_ok); 有人可以帮我
我试图掌握 PHP 和 MYSQL 编程,但在看到示例后,我无法理解 mysql_fetch_row 如何知道要返回哪一行。例如: 在上面的代码中,echo $row[0]; 返回表中第一列的数据,
我想从我的表格中打印特定类别计数,如何使用正确的引用来做到这一点? mysql: while($row = mysql_fetch_array($result)) { echo $row['c
我有以下代码: $username = $_SESSION['username']; $query = ("SELECT id FROM users WHERE username = '$u
如何在codeigniter中使用mysql_fetch_row?在 php 中,当我用户 mysql_fetch_row 时,我会得到这样的结果 $result = mysql_query("SEL
如果我们知道有 3 个结果。我们可以替换下面的 while 循环吗: res = mysql_use_result(co); row = mysql_fetch_row(res); while ((r
考虑这个简单的代码: $q=mysql_query('SELECT [...]'); while($row=mysql_fetch_assoc($q)){ //Do something with
我不知道获取行时的预期问题是什么:\为什么结果是这样的? $result=mysql_query($query); $tbl.=" ";
抱歉,标题含糊不清,但我已经尝试解决这个问题一个星期了,但已经没有想法了。 表:名称:scores id name password intuition (int, varchar
我正在编写一些嵌入到 C++ 中的 MYSQL,但出现了一些我无法查明原因的行为。 我有一个主要功能和两个可以按作者或出版商搜索的功能。如果我按作者搜索,我会在第一时间得到正确的结果。如果我按出版商搜
我遇到了一个关于简单的 MySQL 函数的问题,它是 mysql_fetch_row,每当我使用它时,我的应用程序都会崩溃,它会在执行时崩溃。无论我运行什么查询,它都会崩溃。核心转储内容如下: (gd
我正在为 MySQL 5.5 编写我的第一个 C 客户端并且偶然发现了 the following page在文档中。几乎在最后,它指出(粗体强调我的,斜体强调不是我的): An advantage
我有以下列出数据库中所有表的代码,我想做的是从列表中排除表名。 $listtables = mysql_query("SHOW TABLES"); if($listtables){ while ($
我是一名优秀的程序员,十分优秀!