0
I’m trying to make an appointment with mine BD
but strangely returns nothing, even existing records with the given parameters, yes, the script still uses the mysql_
And I’m changing it, but I’d like to understand why the records don’t show up.
The result is always bool(false)
.
The script is this, the variables, as I said, are with values.
foreach($_SESSION as $nome => $quantidade){
$SUBTotal = 0;
$QTD = 0;
// VERIFICAR SE A QUANTIDADE NÃO ESTÁ ZERADA
if ($quantidade > 0){
// var_dump($quantidade);
if(substr($nome,0,9) == 'produtos_'){
// Pegar ID da Session
$cod_tam = substr($nome,9,(strlen($nome) -9));
list($IdProd, $Fam, $Sub, $Cor, $Tam) = explode(':', $cod_tam);
/*echo $IdProd . "<br>";
echo $Fam . "<br>";
echo $Sub . "<br>";
echo $Cor . "<br>";
echo $Tam . "<br>";*/
$PD = mysql_query("SELECT
cadprodutos.IdProduto,
cadprodutos.Nome,
cadprodutos.Descrição,
cadprodutos.Peso,
cadprodutos.Estoque,
cadprodutos.Ativo,
cadproduto_tamanho_cor_valor.ValorAntigo,
cadproduto_tamanho_cor_valor.ValorVenda,
cadproduto_tamanho_cor_valor.IdCor,
cadprodutos_imagem.Caminho,
cadprodutos_imagem.CaminhoThumbs,
cadcor.Cor,
cadtamanho.Nome AS NomeTamanho
FROM
cadprodutos
INNER JOIN cadproduto_tamanho_cor_valor ON (cadprodutos.IdProduto = cadproduto_tamanho_cor_valor.IdProduto)
INNER JOIN cadprodutos_imagem ON (cadprodutos.IdProduto = cadprodutos_imagem.IdProduto)
INNER JOIN cadcor ON (cadproduto_tamanho_cor_valor.IdCor = cadcor.IdCor)
INNER JOIN cadtamanho ON (cadproduto_tamanho_cor_valor.IdTamanho = cadtamanho.IdTamanho)
WHERE
(`cadprodutos`.IdProduto = '".mysql_real_escape_string((int)$IdProd)."' ) AND
(`cadprodutos`.IdFamilia = '".$Fam."') AND
(`cadprodutos`.IdSubFamilia = '".$Sub."') AND
(`cadcor`.IdCor = '".$Cor."') AND
(`cadtamanho`.IdTamanho = '".$Tam."') AND
(`cadprodutos`.Ativo = 1)");
while($list = mysql_fetch_assoc($PD)) {
$estoque = $list['Estoque'];
$status = $list['Ativo'];
if ( $estoque > 0 && $status == 1){
if ($estoque < $quantidade){
$QTD = $estoque;
}else{
$QTD = $quantidade;
}
$SUBTotal = $QTD * $list['ValorVenda'];
//$SUBTotal = $quantidade * $list['valorvenda'];
?>
<tr bgcolor="#FFFFFF">
<td width="1%" height="40" style="padding: 2px 2px 2px 0">
<img src="<?php echo $list['CaminhoThumbs'] ?>" height="40" border="0" alt="<?php echo $list['Nome'] ?>" title="<?php echo $list['Nome'] ?>" align="absmiddle" class="imagem-destaque-mini" /></td>
<td width="34%" align="left">
<?php echo $list['Nome']; ?> <br />
Tamanho: <?php echo $Tam; ?> <br />
Cor: <?php echo $Cor; ?><br />
</td>
<td width="4%" height="40" align="center" valign="middle" class="quantidade"><?php echo $QTD; ?></td>
<td width="14%" height="40" align="center" valign="middle">R$ <?php echo number_format($list['ValorVenda'],2,",","."); ?></td>
<th width="14%" height="40" align="middle" valign="middle">R$ <?php echo number_format($SUBTotal); ?></th>
</tr>
<?php
} else {
$SUBTotal = $quantidade * 0;
?>
<tr bgcolor="#FFFFFF">
<td width="33%" height="40" style="padding:2px" colspan="2">
<img src="<?php echo $list['CaminhoThumbs'] ?>" height="40" border="0" alt="<?php echo $list['Nome'] ?>" title="'.$list['titulo_produto'].'" align="absmiddle" class="imagem-destaque-mini" />
<?php echo $list['Nome'] ?>
</td>
<td width="7%" height="40" align="center" valign="middle" title="Este produto acabou de ser vendido">Esgotado</td>
<td width="11%" height="40" align="center" valign="middle">R$ 0,00</td>
<th width="11%" height="40" align="middle" valign="middle">R$ 0,00</th>
</tr>
<?php
}
}//while
}//if prod
}// if qtd
}//foreach
Just remembering that the snippet of the site can’t stand it PHP.
– Woss
already tried to run sql directly on phpmyadmin, mysql Workbench, ... ?
– Costamilam
Hello @Guilhermecostamilam, yes, it was the first test I did.
– adventistapr
What version of PHP? The functions
mysql_*
were marked as obsolete in PHP 5.5 and removed in 7.0.– bfavaretto
redo all connections using mysqli and test again
– Tiago NET