Php 函数中的mysql查询和结果语句
我想知道我一直在尝试将MySQL查询和MySQL结果代码放入这样的PHP函数中Php 函数中的mysql查询和结果语句,php,mysql,function,Php,Mysql,Function,我想知道我一直在尝试将MySQL查询和MySQL结果代码放入这样的PHP函数中 function setting($claim){ $query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim
function setting($claim){
$query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim'";
$result = mysql_query($query) or die(mysql_error());
}
我正在尝试使用它,这样我就可以更容易地更改正在选择的内容,而不必有大量不同的变量和内容来更改查询。。。所以基本上我做的是
echo setting("warrenty");
但我有一个错误:
警告:mysql_fetch_row()希望参数1是资源,字符串在
所以我想知道是否有可能将一个MySQL查询和结果放入一个函数中,或者这只是一个不可能发生的事情
如果可能的话,任何帮助都会很好
完整代码
<?
// connection with the database
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "netbookdb";
$result="";
mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);
// require the PHPExcel file
require 'Classes/PHPExcel.php';
// simple query
function setting($claim){
$query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim'";
$result = mysql_query($query) or die(mysql_error());
}
// Create a new PHPExcel object
$objPHPExcel = new PHPExcel();
$objPHPExcel->getActiveSheet()->setTitle('Insurance');
echo setting('Warrenty');
$rowNumber = 1;
while ($row = mysql_fetch_row($result)) {
$col = 'A';
foreach($row as $cell) {
$objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell);
$col++;
}
$rowNumber++;
}
// Save as an Excel BIFF (xls) file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="myFile.xls"');
header('Cache-Control: max-age=0');
$objWriter->save('php://output');
exit();
echo 'a problem has occurred... no data retrieved from the database';
?>
您没有从函数中返回任何结果 使用
返回$result代码>
更新1:
function setting($claim){
$query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim'";
$result = mysql_query($query) or die(mysql_error());
return $result;
}
您还没有贴花您试图在mysql\u fetch\u行中使用的$result变量
,因此首先从函数中返回值,分配它,然后使用它
更新2:
function setting($claim){
$query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim'";
$result = mysql_query($query) or die(mysql_error());
return $result;
}
然后在mysql\u fetch\u row
方法中使用的变量中获取函数的输出。i、 e
$result = setting('Warrenty');
希望这有帮助。您没有返回函数的任何结果
使用返回$result代码>
更新1:
function setting($claim){
$query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim'";
$result = mysql_query($query) or die(mysql_error());
return $result;
}
您还没有贴花您试图在mysql\u fetch\u行中使用的$result变量
,因此首先从函数中返回值,分配它,然后使用它
更新2:
function setting($claim){
$query = "SELECT `cases`, `hg`, `surname`, `firstname`, `type`, `claim`, `charge`, `damage`, `payment`, `repair`, `returned`, `comments`, `cost` FROM `rep_log` WHERE claim='$claim'";
$result = mysql_query($query) or die(mysql_error());
return $result;
}
然后在mysql\u fetch\u row
方法中使用的变量中获取函数的输出。i、 e
$result = setting('Warrenty');
希望这有帮助。您正在分配一个本地“$result”变量,因此“mysql\u fetch\u row($result)”正在使用字符串变量“$result”,初始化为“$result=”,该变量不是资源,因此将引发异常
在“设置”功能中,添加“全局$result;”行:
您正在分配一个本地“$result”变量,因此“mysql\u fetch\u row($result)”正在使用字符串变量“$result”,初始化为“$result=”,该变量不是资源,因此将引发异常
在“设置”功能中,添加“全局$result;”行:
您知道拼写不正确吗?我收到一个错误,基本上说没有运行任何查询,也没有返回任何结果…
您可以发布您收到的确切错误消息,而不是用您自己的话来写吗?此错误警告:mysql\u fetch\u row()希望参数1是资源,在何处调用mysql\u fetch\u row()中给定的字符串?你能发布这方面的代码吗?你知道拼写不正确吗?我收到一个错误,基本上说没有运行任何查询,也没有返回任何结果…
你能发布你得到的确切错误消息,而不是用你自己的话写吗?此错误警告:mysql\u fetch\u row()参数1应为资源,字符串在何处调用mysql_fetch_row()中给定?你能发布代码吗?我试图在脚本后面使用结果,但只有当它在功能中没有时,所有的工作都很好work@Matthew当前位置你试过按照AlphaMale的建议做吗?如果没有,请先试用,然后再评论为什么您认为它可能不起作用。如果你已经试过了,那就更具体地说明你遇到了什么新问题。发布新的错误消息。@MarkByers你是对的,他没有正确使用结果变量。我已经阅读了更新,但我不明白你的意思,我回显了函数不应该MySQL\u fetch\u row查看结果并继续运行Nope。除非并直到你返回结果。我试图在脚本中稍后使用结果,但只有当它在功能中不起作用时,所有的工作才正常work@Matthew当前位置你试过按照AlphaMale的建议做吗?如果没有,请先试用,然后再评论为什么您认为它可能不起作用。如果你已经试过了,那就更具体地说明你遇到了什么新问题。发布新的错误消息。@MarkByers你是对的,他没有正确使用结果变量。我已经阅读了更新,但我不明白你的意思,我回显了函数不应该MySQL\u fetch\u row查看结果并继续运行Nope。除非返回结果。