Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Daltonspider

Como coloco imagem de fundo usando funções php?

Recommended Posts

Nao sei te diz

2 minutos atrás, Eziquiel disse:

Beleza. Onde estava o problema? Faltava a tag na <head>?

 

Nao sei te dizer! creio que era só dificuldade em o chrome mobile de renovar o cache, foi so eu sair e entrar do navegador funcionou!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Grande mestre, uma ultima pergunta, eu poderia tirar aquele onclick e fazer uma condição para os item que estão disponiveis, pois quando clico no item indisponível, ele ainda aparece a mensagem do item disponível para so depois aparecer que esta indisponível.. Estava pensando em fazer o disponível como você fez o indisponivel.. daria certo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim. Se quiser fazer algo específico para os disponíveis, use a mesma lógica.

Aí retire o evento onclick que você havia criado.

 

$('.disponivel').click(function(){
        alert('Mensagem para produto disponível');
      });

Se não quiser nenhuma mensagem para os disponíveis, apenas retire o evento onclick que você havia criado e mantenha este que lhe passei.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem como eu colocar para os disponiveis ao inves de um alert, colocar um confirmar? pq quando o usuario clica no produto disponivel ele pede se você tem certeza que quer esse produto, e o indisponivel apenas fala que esta indisponivel. No caso como seria esse 

 onclick="return confirm('<?php echo $nomepro ?> - CONFIRMA O PEDIDO?')"

no lugar do alert?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode sim. Pode usar assim, se quiser...

 

$('.disponivel').click(function(){
	var retorno = confirm('<?php echo $nomepro ?> - CONFIRMA O PEDIDO?')";
	if (retorno == true) {
		//faça algo
	} else {
		//faça algo
	}
});

Só tem um porém! Pode ser que tenha um problema com o "$nomepro", que poderá retornar o nome errado. Tente aí!

Compartilhar este post


Link para o post
Compartilhar em outros sites
8 minutos atrás, Eziquiel disse:

Pode sim. Pode usar assim, se quiser...

 


$('.disponivel').click(function(){
	var retorno = confirm('<?php echo $nomepro ?> - CONFIRMA O PEDIDO?')";
	if (retorno == true) {
		//faça algo
	} else {
		//faça algo
	}
});

Só tem um porém! Pode ser que tenha um problema com o "$nomepro", que poderá retornar o nome errado. Tente aí!

Notei um problema :/ ele cadastra do mesmo modo o produto indisponivel, pq é um link que chama o insert ai pensei em algo assim, nao entendo nda de js, rsrs mas quando fiz os produtos perdem o link para inserir na tabela clica e nao acontece nda deles, veja como fiz( desculpe tomar seu tempo)

 

	<?php

  
	
	
		$sqlp = mysql_query("SELECT * FROM produtos WHERE id_categoria='11'");
		while($verp = mysql_fetch_array($sqlp)){
			$disponivel = $verp['disponivel'];
			$id_pro = $verp['cod'];
			$nomepro = $verp['nome'];
			$descpro = $verp['descricao'];
			$precopro = $verp['preco'];
			
			
			$classe = ($disponivel == "SIM")? "disponivel" : "indisponivel";
					
			
			if($disponivel == SIM){
				$img = "../imagens/disponivel.png";	
				
				
			}else{
			$img = "../imagens/indisponivel.png";
			
			}
	

	?>
	
	<script>
	$('.indisponivel').click(function(){
  alert('Produto indisponível no momento');
});

$('.disponivel').click(function(){
	var retorno = confirm('<?php echo $nomepro ?> - CONFIRMA O PEDIDO?')";
	if (retorno == true) {
		echo "cadastra.php?cod=<?php echo $id_pro ?>&nome=<?php echo $nomepro ?>&preco=<?php echo $precopro ?>&qtd=1&mesa=<?php echo $idmesa ?>&idGarcon=<?php echo $mostra['idGarcon']; ?>&destino=<?php echo $destino ?>"
	} else {
		header("Location:inicio.php");
	}
});
	</script>
	
	
	
	
	

	<div class="container-fullscreen heading-style-3 <?php echo $classe ?>" style="background-image:url(<?php echo $img ?>); background-size: cover;">
	
   
   
   <center> 
		
	<h3 class="heading-title"><?php echo $nomepro ?>&nbsp R$<?php echo $precopro ?></h3>
	<em class="heading-subtitle"><?php echo $descpro ?></em>
    
	</center>
   
   </div>

Nao sei onde coloco a <a href pra funcionar essa ideia..

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja bem. Há diversas divs que se repetem por meio de um while.

Cada produto tem um id, certo? E cada produto tem um nome, certo?

Então faça o seguinte: coloque no "id" da div mesmo ID do seu produto...

coloque também no "name" da sua div o nome do seu produto.

Exemplo:

 

<div id="<?php echo $id_pro ?>" name="<?php echo $nomepro ?>" class="container-fullscreen heading-style-3 <?php echo $classe ?>" style="background-image:url(<?php echo $img ?>); background-size: cover;">

Agora, quando precisar chamar o id ou nome do produto no evento "click" da div você poderá pegar estes valores assim.

 

$('.indisponivel').click(function(){
  var produto_nome = $(this).attr('name');
  var produto_id   = $(this).attr('id');

  var retorno = confirm( produto_nome + ". Confirmar pedido? ");
  if (retorno == true) {
    alert("o produto "+produto_nome+" tem o seguinte ID: "+produto_id);
  } else {
    alert("negou o pedido");
  }
});

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Daltonspider disse:

Notei um problema :/ ele cadastra do mesmo modo o produto indisponivel, pq é um link que chama o insert ai pensei em algo assim, nao entendo nda de js, rsrs mas quando fiz os produtos perdem o link para inserir na tabela clica e nao acontece nda deles, veja como fiz( desculpe tomar seu tempo)

 


	<?php

  
	
	
		$sqlp = mysql_query("SELECT * FROM produtos WHERE id_categoria='11'");
		while($verp = mysql_fetch_array($sqlp)){
			$disponivel = $verp['disponivel'];
			$id_pro = $verp['cod'];
			$nomepro = $verp['nome'];
			$descpro = $verp['descricao'];
			$precopro = $verp['preco'];
			
			
			$classe = ($disponivel == "SIM")? "disponivel" : "indisponivel";
					
			
			if($disponivel == SIM){
				$img = "../imagens/disponivel.png";	
				
				
			}else{
			$img = "../imagens/indisponivel.png";
			
			}
	

	?>
	
	<script>
	$('.indisponivel').click(function(){
  alert('Produto indisponível no momento');
});

$('.disponivel').click(function(){
	var retorno = confirm('<?php echo $nomepro ?> - CONFIRMA O PEDIDO?')";
	if (retorno == true) {
		echo "cadastra.php?cod=<?php echo $id_pro ?>&nome=<?php echo $nomepro ?>&preco=<?php echo $precopro ?>&qtd=1&mesa=<?php echo $idmesa ?>&idGarcon=<?php echo $mostra['idGarcon']; ?>&destino=<?php echo $destino ?>"
	} else {
		header("Location:inicio.php");
	}
});
	</script>
	
	
	
	
	

	<div class="container-fullscreen heading-style-3 <?php echo $classe ?>" style="background-image:url(<?php echo $img ?>); background-size: cover;">
	
   
   
   <center> 
		
	<h3 class="heading-title"><?php echo $nomepro ?>&nbsp R$<?php echo $precopro ?></h3>
	<em class="heading-subtitle"><?php echo $descpro ?></em>
    
	</center>
   
   </div>

Nao sei onde coloco a <a href pra funcionar essa ideia..

 

resumindo: se o produto estiver indisponivel, ele fica com outra imagem e se alguem clica aparece o alert que o produto esta indisponivel. Se o produto estiver disponivel quando o usuario clica ele pergunta se tem certeza e cadastra o pedido no banco de dados.. 

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, Eziquiel disse:

Veja bem. Há diversas divs que se repetem por meio de um while.

Cada produto tem um id, certo? E cada produto tem um nome, certo?

Então faça o seguinte: coloque no "id" da div mesmo ID do seu produto...

coloque também no "name" da sua div o nome do seu produto.

Exemplo:

 


<div id="<?php echo $id_pro ?>" name="<?php echo $nomepro ?>" class="container-fullscreen heading-style-3 <?php echo $classe ?>" style="background-image:url(<?php echo $img ?>); background-size: cover;">

Agora, quando precisar chamar o id ou nome do produto no evento "click" da div você poderá pegar estes valores assim.

 


$('.indisponivel').click(function(){
  var produto_nome = $(this).attr('name');
  var produto_id   = $(this).attr('id');

  var retorno = confirm( produto_nome + ". Confirmar pedido? ");
  if (retorno == true) {
    alert("o produto "+produto_nome+" tem o seguinte ID: "+produto_id);
  } else {
    alert("negou o pedido");
  }
});

 

Caramba, preciso estudar jquery... :/ 

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Eziquiel disse:

Você pode inserir este link <a> apenas se o produto estiver disponível. Do contrário não.

 

Consegue fazer isso?

Não.. fiquei meio perdido e preocupado com esse jquery.. um mundo bem desconhecido pra mim..

Se nao tiver o link nos indisponiveis fica otimo! nem mensagem precisa mesmo!! 

Agora, Daltonspider disse:

Não.. fiquei meio perdido e preocupado com esse jquery.. um mundo bem desconhecido pra mim..

Se nao tiver o link nos indisponiveis fica otimo! nem mensagem precisa mesmo!! 

Vou te convidar pra minha formatura! kkkk fez parte dos meus estudos! kkkk

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 minuto atrás, Eziquiel disse:

kkkkk.... tive uma ideia que vai ficar ótimo. Vou preparar o código aqui.

Cara, arruma uma conta que preciso te pagar! ou você é um enviado de Deus! kkk 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá...

 

Coloque isto no seu php (pode ser abaixo daquela linha ($classe = ($disponivel == "SIM")....)

$postLink = "cadastra.php?cod=$id_pro&nome=$nomepro&preco=$precopro&qtd=1&mesa=$idmesa&idGarcon=".$mostra['idGarcon']."&destino=$destino";

Agora, dentro da sua <div> vamos incluir esta linha: (pode ser acima do <h3>)

 

<span class="link" style="display:none;"><?php echo $postLink ?></span>

Já eu posto o restante...

Compartilhar este post


Link para o post
Compartilhar em outros sites
4 minutos atrás, Eziquiel disse:

Vamos lá...

 

Coloque isto no seu php (pode ser abaixo daquela linha ($classe = ($disponivel == "SIM")....)


$postLink = "cadastra.php?cod=$id_pro&nome=$nomepro&preco=$precopro&qtd=1&mesa=$idmesa&idGarcon=".$mostra['idGarcon']."&destino=$destino";

Agora, dentro da sua <div> vamos incluir esta linha: (pode ser acima do <h3>)

 


<span class="link" style="display:none;"><?php echo $postLink ?></span>

Já eu posto o restante...

Ate agora tudo compreendido professor...

Compartilhar este post


Link para o post
Compartilhar em outros sites
Seu script ficará assim, agora (para os disponíveis).

$('.disponivel').click(function(){
  var produto_nome = $(this).attr('name');
  var produto_id   = $(this).attr('id');
  var post_link    = $(this).children('.link').html(); 

  var retorno = confirm( produto_nome + ".\n Confirmar pedido? ");
  if (retorno == true) {
    $.post(post_link)
      .done(function( data ) {
        alert("Pedido incluído com sucesso");
    });
  } else {
    alert("negou o pedido");
  }
});

Tente aí

Compartilhar este post


Link para o post
Compartilhar em outros sites
7 minutos atrás, Eziquiel disse:

Seu script ficará assim, agora (para os disponíveis).


$('.disponivel').click(function(){
  var produto_nome = $(this).attr('name');
  var produto_id   = $(this).attr('id');
  var post_link    = $(this).children('.link').html(); 

  var retorno = confirm( produto_nome + ".\n Confirmar pedido? ");
  if (retorno == true) {
    $.post(post_link)
      .done(function( data ) {
        alert("Pedido incluído com sucesso");
    });
  } else {
    alert("negou o pedido");
  }
});

Tente aí

Ele fica com os alerts em loop, da ok nao sai, nem cancelar sai... e tambem nao grava nada no banco..

segue o codigo e um print das janelas:

 

<?php

    
	
	
		$sqlp = mysql_query("SELECT * FROM produtos WHERE id_categoria='11'");
		while($verp = mysql_fetch_array($sqlp)){
			$disponivel = $verp['disponivel'];
			$id_pro = $verp['cod'];
			$nomepro = $verp['nome'];
			$descpro = $verp['descricao'];
			$precopro = $verp['preco'];
			
			
			$classe = ($disponivel == "SIM")? "disponivel" : "indisponivel";
			
			$postLink = "cadastra.php?cod=$id_pro&nome=$nomepro&preco=$precopro&qtd=1&mesa=$idmesa&idGarcon=".$mostra['idGarcon']."&destino=$destino";
					
			
			if($disponivel == SIM){
				$img = "../imagens/disponivel.png";	
				
				
			}else{
			$img = "../imagens/indisponivel.png";
			
			}
	

	?>
	
	<script>
	
	$('.indisponivel').click(function(){
    alert('Produto indisponível no momento');
    });
	
	$('.disponivel').click(function(){
  var produto_nome = $(this).attr('name');
  var produto_id   = $(this).attr('id');
  var post_link    = $(this).children('.link').html(); 

  var retorno = confirm( produto_nome + ".\n Confirmar pedido? ");
  if (retorno == true) {
    $.post(post_link)
      .done(function( data ) {
        alert("Pedido incluído com sucesso");
    });
  } else {
    alert("negou o pedido");
  }
});
	
	
	</script>
	
	
	
	<div class="container-fullscreen heading-style-3 <?php echo $classe ?>" style="background-image:url(<?php echo $img ?>); background-size: cover;">
	   
    <center> 
    <span class="link" style="display:none;"><?php echo $postLink ?></span>
		
	<h3 class="heading-title"><?php echo $nomepro ?>&nbsp R$<?php echo $precopro ?></h3>
	<em class="heading-subtitle"><?php echo $descpro ?></em>
    
	</center>
   
    </div>
   

 

ecos.png

Compartilhar este post


Link para o post
Compartilhar em outros sites
6 minutos atrás, Daltonspider disse:

Ele fica com os alerts em loop, da ok nao sai, nem cancelar sai... e tambem nao grava nada no banco..

segue o codigo e um print das janelas:

 


<?php

    
	
	
		$sqlp = mysql_query("SELECT * FROM produtos WHERE id_categoria='11'");
		while($verp = mysql_fetch_array($sqlp)){
			$disponivel = $verp['disponivel'];
			$id_pro = $verp['cod'];
			$nomepro = $verp['nome'];
			$descpro = $verp['descricao'];
			$precopro = $verp['preco'];
			
			
			$classe = ($disponivel == "SIM")? "disponivel" : "indisponivel";
			
			$postLink = "cadastra.php?cod=$id_pro&nome=$nomepro&preco=$precopro&qtd=1&mesa=$idmesa&idGarcon=".$mostra['idGarcon']."&destino=$destino";
					
			
			if($disponivel == SIM){
				$img = "../imagens/disponivel.png";	
				
				
			}else{
			$img = "../imagens/indisponivel.png";
			
			}
	

	?>
	
	<script>
	
	$('.indisponivel').click(function(){
    alert('Produto indisponível no momento');
    });
	
	$('.disponivel').click(function(){
  var produto_nome = $(this).attr('name');
  var produto_id   = $(this).attr('id');
  var post_link    = $(this).children('.link').html(); 

  var retorno = confirm( produto_nome + ".\n Confirmar pedido? ");
  if (retorno == true) {
    $.post(post_link)
      .done(function( data ) {
        alert("Pedido incluído com sucesso");
    });
  } else {
    alert("negou o pedido");
  }
});
	
	
	</script>
	
	
	
	<div class="container-fullscreen heading-style-3 <?php echo $classe ?>" style="background-image:url(<?php echo $img ?>); background-size: cover;">
	   
    <center> 
    <span class="link" style="display:none;"><?php echo $postLink ?></span>
		
	<h3 class="heading-title"><?php echo $nomepro ?>&nbsp R$<?php echo $precopro ?></h3>
	<em class="heading-subtitle"><?php echo $descpro ?></em>
    
	</center>
   
    </div>
   

 

ecos.png

As caixas de msg ficam aparecendo com essa de confirmar e outra de pedido concluido, ficam se alternando e nao somem, fechei e abri novamente o navegador pra testar o produto indisponivel, ele tambem fica aparecendo varias vezes a caixa dizendo produto indisponivel... e nao tem cadastro no banco de dados para os disponiveis... sera que nao é algo na $postlink?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.