Ir para conteúdo
Fórum Script Brasil
  • 0

Problemas abrir informações de dados PHP


Jeison Pereira

Pergunta

olá, Pessoal!

deve alguns problemas para abrir dados para informar.. veja o erro

Esse deu problema na pagina carrinho.

0) { $soma_carrinho = 0; while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho)) { $soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd']); ?>
Selecionar o produtos index.php
<?php 
    include 'conexao/conn.php';
    //*********************************************************************
    // CONFIGURAÇÃO DE BANCO DE DADOS
    //*********************************************************************
    
   $bd = mysql_select_db($database,$conn);
    
    ?>
    <table cellspacing="1" cellpadding="0" width="50%" align="center" border="0">
    <tr>
    <td>
    <?php 
    $sql = "select * from tbl_produtos order by rand() limit 0,4";
    geraColunas(2,$sql);
    ?>
    </td>
    </tr> 
    </table>
      <?php 
      function geraColunas($pNumColunas,$pQuery){
          $resultado = mysql_query($pQuery);
          echo ("<table width='100%' border='0'>\n");
              for($i=0;$i < mysql_num_rows($resultado);++$i){
                      
                  for($iCont = 0; $iCont < $pNumColunas; $iCont++){
                      $linha = mysql_fetch_array($resultado);
                      
                    if ($i > $linha) {
                           if ( $intCont < $pNumColunas-1) echo "</tr>\n";
                           break;
                    }
                      
                      $cod = $linha[0];
                      $nome =$linha[1];
                      $img = $linha[2];
                      $preço = number_format($linha[3],2,",",".");
                      
                      if($iCont == 0) echo "<tr>\n";
                      
                      echo"<td>";
                      echo"<table width='266' border ='0' cellspacing='0' cellpadding='0'>";
                      echo"<tr>";
                      echo"<td width='250' height='141' valign='middle'><div align='center'><img src='fotos/".$img."' border='0' witdh='189' height='141'/></div></td>";
                      echo"</tr>";
                      echo"<tr>";
                      echo"<td>";
                      echo"<table width='92%' border='0' cellspacing='0' cellpadding='0'>";
                      echo"<tr>";
                      echo"<td><center><div align='center' style='font-size:10px font-family:Verdana'><strong>$nome</strong></div align='center'><font color='#ff0000' size='4px'> R$ ".$preço."</font></strong></div></center></td>";
                      echo"</tr>";
                      echo"<tr>";
                      echo"<td><center><a href='carrinho.php?cod=".$cod."&acao='incluir'><img src='imagem/btn_comprar.gif' border='0'></a></center></td>";
                      echo"</tr>";
                      echo"</table>";
                      echo"</td>";
                      echo"</tr>";
                      echo"</table>";
                      
                      echo"</td>";
                      
                   if ( $intCont == $pNumColunas-1 ) {
                           echo "</tr>\n";
                  } else { $i++; }
                 }
              }
          echo"</table>";
      }
      ?>
Adicionar o carrinho carrinho.php
<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod'];


// Verificamos se a acao é igual a incluir
if ($acao == "incluir")
{    
    // Verificamos se cod do produto é diferente de vazio
    if ($cod != '')
    {
        // Se for diferente de vazio verificamos se é numérico
        if (is_numeric($cod))
        {    
            // Tratamos a variavel de caracteres indevidos
            $cod = addslashes(htmlentities($cod));

            // Verificamos se o produto referente ao $cod já está no carrinho para o session id correnpondente
            $query_rs_carrinho = "SELECT * FROM tbl_carrinho WHERE tbl_carrinho.cod = '".$cod."'  AND tbl_carrinho.sessao = '".session_id()."'";
            $rs_carrinho = mysql_query($query_rs_carrinho, $conn) or die(mysql_error());
            $row_rs_carrinho = mysql_fetch_assoc($rs_carrinho);
            $totalRows_rs_carrinho = mysql_num_rows($rs_carrinho);

            // Se o total for igual a zero é sinal que o produto ainda não está no carrinho
            if ($totalRows_rs_carrinho == 0)
            {
                // Aqui pegamos os dados do produto a ser incluido no carrinho
                $query_rs_produto = "select * from tbl_produtos where cod = '".$cod."'";
                $rs_produto = mysql_query($query_rs_produto, $conn) or die(mysql_error());
                $row_rs_produto = mysql_fetch_assoc($rs_produto);
                $totalRows_rs_produto = mysql_num_rows($rs_produto);

                // Se total for maior que zero esse produto existe e então podemos incluir no carrinho
                if ($totalRows_rs_produto > 0)
                {
                    $registro_produto = mysql_fetch_assoc($rs_produto);
                    // Incluimos o produto selecionado no carrinho de compras
                    $add_sql = "INSERT INTO tbl_carrinho (id, cod, nome, preço, qtd, sessao) 
                    VALUES
                    ('','".$row_rs_produto['cod']."','".$row_rs_produto['nome']."','".$row_rs_produto['preço']."','1','".session_id()."')";
                    $rs_produto_add = mysql_query($add_sql, $conn) or die(mysql_error());
                }
            }        
        }
    }
}    

// Verificamos se a acao é igual a excluir
if ($acao == "excluir")
{
    // Verificamos se cod do produto é diferente de vazio
    if ($cod != '')
    {
        // Se for diferente de vazio verificamos se é numérico
        if (is_numeric($cod))
        {    
            // Tratamos a variavel de caracteres indevidos
            $cod = addslashes(htmlentities($cod));
            // Verificamos se o produto referente ao $cod  está no carrinho para o session id correnpondente
            $query_rs_car = "SELECT * FROM tbl_carrinho WHERE cod = '".$cod."'  AND sessao = '".session_id()."'";
            $rs_car = mysql_query($query_rs_car, $conn) or die(mysql_error());
            $row_rs_carrinho = mysql_fetch_assoc($rs_car);
            $totalRows_rs_car = mysql_num_rows($rs_car);

            // Se encontrarmos o registro, excluimos do carrinho
            if ($totalRows_rs_car > 0)
            {
                $sql_carrinho_excluir = "DELETE FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'";    
                $exec_carrinho_excluir = mysql_query($sql_carrinho_excluir, $conn) or die(mysql_error());
            }
        }
    }
}

// Verificamos se a ação é de modificar a quantidade do produto
if ($acao == "modifica")
{
    $quant = $_POST['qtd'];
        // Se for diferente de vazio verificamos se é numérico
        if (is_array($quant))
        {    
            // Aqui percorremos o nosso array
            foreach($quant as $cod => $qtd)
            {
                // Verificamos se os valores são do tipo numeric
                if(is_numeric($cod) && is_numeric($qtd))
                {
                    // Fazemos nosso update nas quantidades dos produtos
                    $sql_modifica = "UPDATE tbl_carrinho SET qtd =     '$qtd' WHERE  cod = '$cod' AND sessao = '".session_id()."'";
                    $rs_modifica = mysql_query($sql_modifica, $conn) or die(mysql_error());
                }
            }
        }

}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Carrinho de Compras</title>
<style type="text/css">
<!--
.style3 {font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif; }
.style4 {
    color: #FF0000;
    font-weight: bold;
}
-->
</style>
</head>

<body>
<div align="center"><h1>Carrinho de compras</h1></div>
<form action="carrinho.php?acao=modifica" method="post">
  <table width="100%" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <th width="14%" scope="col"><table width="100%" border="1" cellspacing="0" cellpadding="0">
      <tr>
        <th width="36%" scope="col"><div align="left">PRODUTO</div></th>
        <th width="22%" scope="col">PREÇO</th>
        <th width="13%" scope="col">QUANTIDADE</th>
        <th width="14%" scope="col">SUBTOTAL</th>
        <th width="15%" scope="col"> </th>
      </tr>
      <?
  $sql_meu_carrinho = "SELECT * FROM tbl_carrinho WHERE  sessao = '".session_id()."' ORDER BY nome ASC";
  $exec_meu_carrinho =  mysql_query($sql_meu_carrinho, $conn) or die(mysql_error());
  $qtd_meu_carrinho = mysql_num_rows($exec_meu_carrinho);

  if ($qtd_meu_carrinho > 0)
  {
      $soma_carrinho = 0;
      while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho))
    {
        $soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd']);
  ?>
      <tr>
        <td><span class="style3">
          <?=$row_rs_produto_carrinho['nome']?>
        </span></td>
        <td><div align="center" class="style3">
          <?= number_format($row_rs_produto_carrinho['preço'],2,",","."); ?>
        </div></td>
        <td><div align="center" class="style3">
          <input type="text" size="2" name="qtd[<?=$row_rs_produto_carrinho['cod']?>]" value="<?=$row_rs_produto_carrinho['qtd']?>" />
        </div></td>
        <td><div align="center" class="style3">
          <?= number_format($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd'],2,",","."); ?>
        </div></td>
        <td><div align="center"><a href="carrinho.php?cod=<?=$row_rs_produto_carrinho['cod']?>&acao=excluir"><img src="imagem/remover.png" width="32" height="32" border="0" /></a></div></td>
      </tr>
      <?
  }
}
  ?>
      <tr>
        <td colspan="3"><div align="right"><strong>TOTAL:</strong>  </div>
          <div align="right"></div>
          <div align="right"></div></td>
        <td><div align="center" class="style3 style4">
          <?= number_format($soma_carrinho,2,",","."); ?>
        </div></td>
        <td> </td>
      </tr>
      <tr>
        <td colspan="5"><table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <th width="33%" height="60" scope="col"><span class="style3"><a href="produtos.php"><img src="imagem/continuar_compras.jpg" width="32" height="32" border="0" /></a></span></th>
            <th width="33%" scope="col"> </th>
            <th width="34%" scope="col"><label>
              <input type="image" name="imageField" src="imagem/finalizar.png" />
            </label></th>
          </tr>
        </table></td>
      </tr>
    </table></th>
  </tr>
  </table>
</form>

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0

O motivo de estar aparecendo o código PHP ao invés de estar sendo executado é por causa que você está abrindo a sintaxe do php com '<?', o correto é '<?php', já vi o XAMPP não reconhecer o comando PHP por causa disto e futuramente a sintaxe '<?' será retirada do php! Altere isto e teste, qualquer coisa volte a postar...

obs: mas seja mais claro com suas dúvidas, pois está meio difícil enteder o que você quer hehe

obs2: você é brasileiro?

Link para o comentário
Compartilhar em outros sites

  • 0
O motivo de estar aparecendo o código PHP ao invés de estar sendo executado é por causa que você está abrindo a sintaxe do php com '<?', o correto é '<?php', já vi o XAMPP não reconhecer o comando PHP por causa disto e futuramente a sintaxe '<?' será retirada do php! Altere isto e teste, qualquer coisa volte a postar...

obs: mas seja mais claro com suas dúvidas, pois está meio difícil enteder o que você quer hehe

obs2: você é brasileiro?

Sim, sou Brasileiro... Sou surdo, não escreve 100% português... é as vezes erra de verbos e falta clareza... estou tentando escrever clareza para vocês entender..

Link para o comentário
Compartilhar em outros sites

  • 0
Ah, ok! hehe

Mas é o seguinte: troque todas as tags do php <? para <?php, deve resolver o problema...

já alterei tudo e agora não esta mais aparecer os erros. mas quando clicar "comprar produtos" e os dados não enviou para Banco de dados, na próxima janela do carrinho e não apareceu nennhum informações os produtos adicionando carrinho. espero você me ajude...

Link para o comentário
Compartilhar em outros sites

  • 0
Por favor, cole o código atualizado novamente...

carrinho.php atualizado

<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod'];


// Verificamos se a acao é igual a incluir
if ($acao == "incluir")
{    
    // Verificamos se cod do produto é diferente de vazio
    if ($cod != '')
    {
        // Se for diferente de vazio verificamos se é numérico
        if (is_numeric($cod))
        {    
            // Tratamos a variavel de caracteres indevidos
            $cod = addslashes(htmlentities($cod));
            
            // Verificamos se o produto referente ao $cod já está no carrinho para o session id correnpondente
            $query_rs_carrinho = "SELECT * FROM tbl_carrinho WHERE tbl_carrinho.cod = '".$cod."'  AND tbl_carrinho.sessao = '".session_id()."'";
            $rs_carrinho = mysql_query($query_rs_carrinho, $conn) or die(mysql_error());
            $row_rs_carrinho = mysql_fetch_assoc($rs_carrinho);
            $totalRows_rs_carrinho = mysql_num_rows($rs_carrinho);

            // Se o total for igual a zero é sinal que o produto ainda não está no carrinho
            if ($totalRows_rs_carrinho == 0)
            {
                // Aqui pegamos os dados do produto a ser incluido no carrinho
                $query_rs_produto = "select * from tbl_produtos where cod = '".$cod."'";
                $rs_produto = mysql_query($query_rs_produto, $conn) or die(mysql_error());
                $row_rs_produto = mysql_fetch_assoc($rs_produto);
                $totalRows_rs_produto = mysql_num_rows($rs_produto);

                // Se total for maior que zero esse produto existe e então podemos incluir no carrinho
                if ($totalRows_rs_produto > 0)
                {
                    $registro_produto = mysql_fetch_assoc($rs_produto);
                    // Incluimos o produto selecionado no carrinho de compras
                    $add_sql = "INSERT INTO tbl_carrinho (id, cod, nome, preço, qtd, sessao)
                    VALUES
                    ('','".$row_rs_produto['cod']."','".$row_rs_produto['nome']."','".$row_rs_produto['preço']."','1','".session_id()."')";
                    $rs_produto_add = mysql_query($add_sql, $conn) or die(mysql_error());
                }
            }        
        }
    }
}    

// Verificamos se a acao é igual a excluir
if ($acao == "excluir")
{
    // Verificamos se cod do produto é diferente de vazio
    if ($cod != '')
    {
        // Se for diferente de vazio verificamos se é numérico
        if (is_numeric($cod))
        {    
            // Tratamos a variavel de caracteres indevidos
            $cod = addslashes(htmlentities($cod));
            // Verificamos se o produto referente ao $cod  está no carrinho para o session id correnpondente
            $query_rs_car = "SELECT * FROM tbl_carrinho WHERE cod = '".$cod."'  AND sessao = '".session_id()."'";
            $rs_car = mysql_query($query_rs_car, $conn) or die(mysql_error());
            $row_rs_carrinho = mysql_fetch_assoc($rs_car);
            $totalRows_rs_car = mysql_num_rows($rs_car);

            // Se encontrarmos o registro, excluimos do carrinho
            if ($totalRows_rs_car > 0)
            {
                $sql_carrinho_excluir = "DELETE FROM tbl_carrinho WHERE cod = '".$cod."' AND sessao = '".session_id()."'";    
                $exec_carrinho_excluir = mysql_query($sql_carrinho_excluir, $conn) or die(mysql_error());
            }
        }
    }
}

// Verificamos se a ação é de modificar a quantidade do produto
if ($acao == "modifica")
{
    $quant = $_POST['qtd'];
        // Se for diferente de vazio verificamos se é numérico
        if (is_array($quant))
        {    
            // Aqui percorremos o nosso array
            foreach($quant as $cod => $qtd)
            {
                // Verificamos se os valores são do tipo numeric
                if(is_numeric($cod) && is_numeric($qtd))
                {
                    // Fazemos nosso update nas quantidades dos produtos
                    $sql_modifica = "UPDATE tbl_carrinho SET qtd =     '$qtd' WHERE  cod = '$cod' AND sessao = '".session_id()."'";
                    $rs_modifica = mysql_query($sql_modifica, $conn) or die(mysql_error());
                }
            }
        }

}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Carrinho de Compras</title>
<style type="text/css">
<!--
.style3 {font-size: 10px; font-family: Verdana, Arial, Helvetica, sans-serif; }
.style4 {
    color: #FF0000;
    font-weight: bold;
}
-->
</style>
</head>

<body>
<div align="center"><h1>Carrinho de compras</h1></div>
<form action="carrinho.php?acao=modifica" method="post">
  <table width="100%" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <th width="14%" scope="col"><table width="100%" border="1" cellspacing="0" cellpadding="0">
      <tr>
        <th width="36%" scope="col"><div align="left">PRODUTO</div></th>
        <th width="22%" scope="col">PREÇO</th>
        <th width="13%" scope="col">QUANTIDADE</th>
        <th width="14%" scope="col">SUBTOTAL</th>
        <th width="15%" scope="col"> </th>
      </tr>
      <?php
  $sql_meu_carrinho = "SELECT * FROM tbl_carrinho WHERE  sessao = '".session_id()."' ORDER BY nome ASC";
  $exec_meu_carrinho =  mysql_query($sql_meu_carrinho, $conn) or die(mysql_error());
  $qtd_meu_carrinho = mysql_num_rows($exec_meu_carrinho);

  if ($qtd_meu_carrinho > 0)
  {
      $soma_carrinho = 0;
      while ($row_rs_produto_carrinho = mysql_fetch_assoc($exec_meu_carrinho))
    {
        $soma_carrinho += ($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd']);
  ?>
      <tr>
        <td><span class="style3">
          <?php $row_rs_produto_carrinho['nome']?>
        </span></td>
        <td><div align="center" class="style3">
          <?php number_format($row_rs_produto_carrinho['preço'],2,",","."); ?>
        </div></td>
        <td><div align="center" class="style3">
          <input type="text" size="2" name="qtd[<?php $row_rs_produto_carrinho['cod']?>]" value="<?php $row_rs_produto_carrinho['qtd']?>" />
        </div></td>
        <td><div align="center" class="style3">
          <?php number_format($row_rs_produto_carrinho['preço']*$row_rs_produto_carrinho['qtd'],2,",","."); ?>
        </div></td>
        <td><div align="center"><a href="carrinho.php?cod=<?php $row_rs_produto_carrinho['cod']?>&acao='excluir'"><img src="imagem/remover.png" width="32" height="32" border="0" /></a></div></td>
      </tr>
      <?php
  }
}
  ?>
      <tr>
        <td colspan="3"><div align="right"><strong>TOTAL:</strong>  </div>
          <div align="right"></div>
          <div align="right"></div></td>
        <td><div align="center" class="style3 style4">
          <?php number_format($soma_carrinho,2,",","."); ?>
        </div></td>
        <td> </td>
      </tr>
      <tr>
        <td colspan="5"><table width="100%" border="0" cellspacing="0" cellpadding="0">
          <tr>
            <th width="33%" height="60" scope="col"><span class="style3"><a href="produtos.php"><img src="imagem/continuar_compras.jpg" width="32" height="32" border="0" /></a></span></th>
            <th width="33%" scope="col"> </th>
            <th width="34%" scope="col"><label>
              <input type="image" name="imageField" src="imagem/finalizar.png" />
            </label></th>
          </tr>
        </table></td>
      </tr>
    </table></th>
  </tr>
  </table>
</form>
</body>
</html>

arquivo index.php são mesma em cima.

Espero que me ajudem...

Link para o comentário
Compartilhar em outros sites

  • 0

Certo. A variável GET está com os valores corretos?

Imprime o valor da variável $acao e $cod para ver em qual if ele está entrando...

<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod']
Altere para
<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod']
echo $acao . ' - ' . $cod;

Link para o comentário
Compartilhar em outros sites

  • 0
Certo. A variável GET está com os valores corretos?

Imprime o valor da variável $acao e $cod para ver em qual if ele está entrando...

<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod']
Altere para
<?php
// Iniciamos nossa sessão que vai indicar o usuário pela session_id
session_start();
include "conexao/conn.php";
// Recuperamos os valores passados por parametros
$acao = $_GET['acao'];
$cod =  $_GET['cod']
echo $acao . ' - ' . $cod;
Testei para imprimir a tela o GET "acao" não aparece imprimir na tela. só GET "cod" aparece na tela. na outra pagina index.php o código que vai enviar para carrinho.php
echo"<td><center><a href='carrinhos.php?cod=".$cod."&acao='incluir'><img src='imagem/btn_comprar.gif' border='0'></a></center></td>";

Link para o comentário
Compartilhar em outros sites

  • 0

Hmmmmm....

O motivo de não aparecer é que há uma aspa antes da palavra incluir. Retire ela, deixe assim:

echo"<td><center><a href='carrinhos.php?cod=".$cod."&acao=incluir'><img src='imagem/btn_comprar.gif' border='0'></a></center></td>";

O link do comando que você estava usando seria traduzido para isto:

<a href='carrinhos.php?cod=15&acao='incluir'>

Veja que você faz href= e abre aspas simples pois é uma string, e antes da palvra incluir você fecha aspa simples, como se a string tivesse terminado, o que está errado. Somente retire ela e deverá funcionar...

Editado por Stoma
Link para o comentário
Compartilhar em outros sites

  • 0
Hmmmmm....

O motivo de não aparecer é que há uma aspa antes da palavra incluir. Retire ela, deixe assim:

echo"<td><center><a href='carrinhos.php?cod=".$cod."&acao=incluir'><img src='imagem/btn_comprar.gif' border='0'></a></center></td>";

O link do comando que você estava usando seria traduzido para isto:

<a href='carrinhos.php?cod=15&acao='incluir'>

Veja que você faz href= e abre aspas simples pois é uma string, e antes da palvra incluir você fecha aspa simples, como se a string tivesse terminado, o que está errado. Somente retire ela e deverá funcionar...

Já consegui enviar os dados no banco de dados. se tiver alguns duvida estarei contatos com vocês.. obrigado!!

Abs

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...