gpt4 book ai didi

php - mysql select 转换为 zend Framework select

转载 作者:行者123 更新时间:2023-11-29 23:29:20 27 4
gpt4 key购买 nike

我试图将简单的 mysql select 查询转换为 zend 框架 select

所以我有这个:

<?php
$HOST = "localhost";
$USER = "root";
$PASS = "";

$conexion = mysql_connect($HOST,$USER,$PASS) or die("Problemas en la conexion");
mysql_select_db("rapidoypoderosodb",$conexion) or die("Problemas en la seleccion de la base de datos");
mysql_query("SET NAMES 'utf8'");


$sql= "SELECT DISTINCT * FROM especialistas WHERE activo='1'order by estado";
$result=mysql_query($sql);
$options = '<option id="idSelect" value="">seleccione estado...</option>';

while ($row=mysql_fetch_array($result))
{
$estado = $row["estado"];
$options.='<OPTION VALUE="'.$estado.'">'.$estado.'</option>';
}
echo $options;
?>

我已经转换了:

<?php
global $WHG_DB_HOST, $WHG_DB_USER,$WHG_DB_PASSWD,$WHG_DB_REPLDB;
$db = new Zend_Db_Adapter_Pdo_Mysql(array(
'host' => $WHG_DB_HOST,
'username' => $WHG_DB_USER,
'password' => $WHG_DB_PASSWD,
'dbname' => $WHG_DB_REPLDB
));
$db->query("SET NAMES 'utf8'");
$select = $db->select()
->distinct()
->from(array('e' => 'especialistas'))
->where('e.activo = 1', $VARIABLE)
->order('e.estado');

$result = $db->fetchAll($select);
$options = '<option id="idSelect" value="">seleccione estado...</option>';
foreach($result as $row){
$estado = $row["estado"];
$options.='<OPTION VALUE="'.$estado.'">'.$estado.'</option>';
}
echo $options;
?>

问题是理论上行不通,我的index.php给了我一个列表来选择一个选项,但行不通,为什么?

最佳答案

调试 Select 最简单的方法是手动尝试生成的 SQL 查询。只需回显您的选择实例,__toString 方法就会组装查询。

关于您的代码,where 子句中只有一个小错误。将值定义为第二个参数,以便正确转义和引用它。

    $select = $db->select()
->distinct()
->from(['e' => 'especialistas'])
->where('e.activo = ?', 1)
->order('e.estado');

关于php - mysql select 转换为 zend Framework select,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26681432/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com