Jump to content
gabrielslessa

Erro com bind_param() com conexão PDO mysql

Recommended Posts

Ola amigos, se alguém puder me ajudar no erro no script eu agradeço muito, o erro é o seguinte:

 

Fatal error: Call to undefined method PDOStatement::bind_param() in

o código é esse:

setlocale(LC_MONETARY,"en_US");
if(isset($_POST["id"])) {
	foreach($_POST as $key => $value){
		$product[$key] = filter_var($value, FILTER_SANITIZE_STRING);
	}	
	
	$statement = app('db')->prepare("SELECT as_produtos.nome, as_produtos.preco FROM as_produtos WHERE id=? LIMIT 1");
	$statement->bind_param('s', $product['id']);
	$statement->execute();
	$statement->bind_result($product_name, $product_price);
	
	while($statement->fetch()){ 
		$product["product_name"] = $product_name;
		$product["product_price"] = $product_price;		
		if(isset($_SESSION["products"])){ 
			if(isset($_SESSION["products"][$product['id']])) {				
				$_SESSION["products"][$product['id']]["product_qty"] = $_SESSION["products"][$product['id']]["product_qty"] + $_POST["product_qty"];				
			} else {
				$_SESSION["products"][$product['id']] = $product;
			}			
		} else {
			$_SESSION["products"][$product['id']] = $product;
		}	
	}	
 	$total_product = count($_SESSION["products"]);
	die(json_encode(array('products'=>$total_product)));
}

if(isset($_GET["remove_code"]) && isset($_SESSION["products"])) {
	$product_code  = filter_var($_GET["remove_code"], FILTER_SANITIZE_STRING);
	if(isset($_SESSION["products"][$product_code]))	{
		unset($_SESSION["products"][$product_code]);
	}	
 	$total_product = count($_SESSION["products"]);
	die(json_encode(array('products'=>$total_product)));
}

if(isset($_GET["update_quantity"]) && isset($_SESSION["products"])) {	
	if(isset($_GET["quantity"]) && $_GET["quantity"]>0) {		
		$_SESSION["products"][$_GET["update_quantity"]]["product_qty"] = $_GET["quantity"];	
	}
	$total_product = count($_SESSION["products"]);
	die(json_encode(array('products'=>$total_product)));
}

 

 

Share this post


Link to post
Share on other sites

Tenta usar da seguinte forma:

 

CÓDIGO

<?php	
  $statement = app('db')->prepare("SELECT as_produtos.nome, as_produtos.preco FROM as_produtos WHERE id=:id LIMIT 1");
  $statement->bindParam(':id', $product['id']);

 

Share this post


Link to post
Share on other sites

Obrigado pela ajuda amigo, resolvi o problema com sua explicação e ajustando as linhas abaixo, muito obrigado.

 

o codigo  (carrinho de compras): 

 

setlocale(LC_MONETARY,"pt_BR");

# add products in cart 
if(isset($_POST["id"])) {
foreach($_POST as $key => $value) :
    $product[$key] = filter_var($value, FILTER_SANITIZE_STRING);
endforeach; 

 $statement = app('db')->prepare("SELECT as_produtos.nome, as_produtos.preco FROM as_produtos WHERE id = :id LIMIT 1");
 $statement->bindParam(':id', $product['id'], PDO::PARAM_INT);
 $statement->execute();

foreach($statement as $dados_produto) :

    $product["product_name"] = $dados_produto["nome"];
    $product["product_price"] = $dados_produto["preco"];
   
    if(isset($product["product_name"])){ 

        if(isset($_SESSION["products"][$product['id']])) {              
            $_SESSION["products"][$product['id']]["product_qty"] = $_SESSION["products"][$product['id']]["product_qty"] + $_POST["product_qty"];
            
        } else {
            $_SESSION["products"][$product['id']] = $product;
        }   

    } else {
        $_SESSION["products"][$product['id']] = $product;
    }   

endforeach;

$total_product = count($_SESSION["products"]);
die(json_encode(array('products'=>$total_product)));
}

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By samuel.huarachi
      Como o sistema da Yellow funciona?
      Como uma requisição no celular, destrava um patinete?

      Tem algum artigo na internet falando disso?
    • By geivisonsales
      Tenho um site sobre conteudos de entretenimento, e todos os posts tem uma imagem de fundo do tmdb, tem alguma maneira de otimizar o carregamento dessas imagens por url? ou alguma outra maneira?
    • By Salvatore
      Então, eu estou gravando uns dados no bancos de dados usando text area, mas quando eu dou espaço ou algo do tipo fica assim
       
      Ex :aaaa\r\naaaaaa\r\n
       
      onde esses \r\n são espaços e outras coisas, e ficam sendo exibidos quando eles retorna para a pagina
      alguém sabe como resolvo isso?
    • By violin101
      Caros amigos, saudações...
       
      Estou usando Codeigniter e estou com uma pequena dúvida.
       
      Tenho um Form com os seguintes campos:
      Data Início..... <input type="date" /> Hora Início.... <input type="time" /> Data Final..... <input type="date" /> Hora Final.... <input type="time" /> até aqui tudo bem
       
      Gostaria de fazer uma VERIFICAÇÃO para impedir que o usuário GRAVE no MySql uma data menor que a data atual.
      ou seja:
      Data Início nunca poderá ser menor que a Data Atual.
      e a
      Data Final só poder ser igual ou maior que a Data Início.
       
      Grato,
       
      Cesar
       
    • By Salvatore
      Galerinha Boa, alguém pode me explicar como eu faço pra editar isso abaixo usando php
       
       
       <div class="nome-vip">
              <p class="text-center"><span>1</span> CASH</p>             <---------------essa parte eu queria saber como eu edito clicando por cima(tentei usando contenteditable), mas n deu do jeito que eu queria,preciso que o valor editado fique em uma variavel PHP
            </div>
            <p class="text-center" style="color: #888; font-size: 15px;">por apenas</p>
            <div class="preco-vip">
              <p class="text-center">R$ 1</p> <------------------- e aqui iria ter a variável preço que ja estaria definida como um, e quando la em cima fosse adicionado um valor int, somasse os 2 e gerasse a variavel valor e exibindo ela
            </div>
       
      Alguém ajuda eu, to caçando em mts sites algo assim mas n consigo
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.