错误:在两个不同的地方显示数据php mysql

时间:2014-10-16 17:17:57

标签: php mysql

我的网页中有2个部分: enter image description here

我试图从我的数据库中显示不同的数据:

<?php
$id=$_GET['vari'];
include 'conexion.php';
$con=conexion();
$sql="select * from cliente where idcli='".$id."'";
$res=mysql_query($sql,$con);
$fila=mysql_fetch_array($res);
mysql_close($con);
?>

<?php



$idusu =   $_SESSION['idusuario']; 
    $sqlcot="select c.idcotiza, c.fechacotiza, c.proyecto, u.nomusuario, c.status from cotizacion c, usuario u where c.idusuario = u.idusuario and c.idcli= ".$idusu."'";
    $rescot=mysql_query($sqlcot,$cone);
if($sqlcot === FALSE) {
    die(mysql_error()); // TODO: better error handling
    echo mysql_error();
}

//meter en tabla
echo "<html><tr><td>Folio</td><td>Fecha</td><td>Proyecto</td><td>Vendedor</td><td>Status</td></tr>";
while ($dato=mysql_fetch_array($rescot))
{ 
echo "<tr>";
echo "<td>".$dato['c.idcotiza']."</td>";
echo "<td>".$dato['c.fechacotiza']."</td>";
echo "<td>".$dato['c.proyecto']."</td>";
echo "<td>".$dato['u.nomusuario']."</td>";
echo "<td>".$dato['c.status']."</td>";
echo "</tr>";   
}
echo "</table>";

?>

第一个代码有效!但第二个不起作用......

它告诉我的信息是:

`Notice: Undefined variable: cone in C:\xampp\htdocs\...php on line 378 //but cone is defined

Warning: mysql_query() expects parameter 2 to be resource, null given in C:\xampp\htdocs\....php on line 378
FolioFechaProyectoVendedorStatus
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in C:\xampp\htdocs\P...l.php on line 386`

php代码位于我的页面的两个不同位置

任何想法?

2 个答案:

答案 0 :(得分:1)

所有问题都是从这一行开始的

$rescot=mysql_query($sqlcot,$cone);

确保定义$ cone变量。

答案 1 :(得分:1)

检查$ cone

错误表明$cone未定义。尝试在print_r($cone); die();之前添加mysql_query

$ cone未定义的可能原因。

  1. 之前未在代码中取消设置连接资源$cone
  2. 您可能遇到名称空间问题,请尝试echo __NAMESPACE__;进行验证。
  3. 仔细检查进程以确保变量的名称相同,并且正在设置为连接对象。
    • 在上一个示例中,您将变量设置为$con而不是$cone
  4. 注入易受攻击

    以下代码部分高度易受SQL注入攻击。

    $id=$_GET['vari'];
    
    $sql="select * from cliente where idcli='".$id."'";
    

    请注意,如果有人在查询字符串中添加单引号会发生什么:?vari=1'; DROP TABLE cliente where '1'='1

    PHP PDO

    请考虑使用PHP:PDO