Jump to content

AnthonyKamers

Members
  • Content count

    72
  • Joined

  • Last visited

Posts posted by AnthonyKamers


  1. Tenho duas tabelas, a titulospagar e a titulosavulsos e em ambas eu tenho o campo placaMotorista e gostaria de somar os valores de cada uma

     

    Gostaria de fazer uma query, juntando os dados delas em determinado tempo, dando GROUP BY em placaMotorista.

     

    Fiz as duas queries a seguir, mas os valores retornam errados (muito grandes para cada placa).

     

    SELECT SUM(a.valorTitulo) AS geralPlaca, SUM(b.valorTitulo) AS manutencaoPlaca, b.placaMotoristaTitulo AS placa
    		FROM titulospagar a, titulosavulsos b
    		WHERE a.dataVencimentoTitulo BETWEEN '$dataDe' AND '$dataAte' && b.dataTitulo BETWEEN '$dataDe' AND '$dataAte' && a.placaMotoristaTitulo = b.placaMotoristaTitulo && b.placaMotoristaTitulo != 'Nenhum'
    		GROUP BY a.placaMotoristaTitulo, b.placaMotoristaTitulo
    		ORDER BY a.placaMotoristaTitulo ASC, b.placaMotoristaTitulo ASC
    SELECT SUM(titulospagar.valorTitulo) AS geralPlaca, SUM(titulosavulsos.valorTitulo) AS manutencaoPlaca, titulospagar.placaMotoristaTitulo AS placa
    		FROM titulospagar INNER JOIN titulosavulsos ON titulospagar.placaMotoristaTitulo != 'Nenhum' && titulospagar.placaMotoristaTitulo = titulosavulsos.placaMotoristaTitulo &&  titulospagar.dataVencimentoTitulo BETWEEN '$dataDe' AND '$dataAte' && titulosavulsos.dataTitulo BETWEEN '$dataDe' AND '$dataAte'
    		GROUP BY titulospagar.placaMotoristaTitulo, titulosavulsos.placaMotoristaTitulo
    		ORDER BY titulospagar.placaMotoristaTitulo ASC

     

    Em ambas retorna o mesmo valor para cada placa, mas o valor que retorna é errado.

     

    Exemplo do erro com o SQLFiddle: http://www.sqlfiddle.com/#!9/4cdd5c/1

     

    Se alguém puder me ajudar, agradeço desde já!!


  2. Olá amigo, obrigado pela resposta.

    Mas mesmo após colocar essas configurações no php.ini, não consigo cadastrar arquivos com, por exemplo, 30Mb...

     

    Preciso fazer "upload" de arquivos grandes, mas é tudo Local, então acredito que isso não teria problema, poderia colocar quantos Mb quisesse e faria upload, mas isso não acontece.

     

    Teria alguma forma de fazer upload de arquivos como 150Mb / 300Mb??

    Já tentei colocar 10G no php.ini, mas também não deu.


  3. Estou fazendo um sistema em PHP (vai funcionar todo Local), do qual precisa fazer vários Uploads de imagens e arquivos pesados.

    Alterei no php.ini e alterei todas as configurações como post_max_size, upload_max_filesize, memory_limit, max_execution_time para os maiores valores possíveis, mas mesmo assim não consigo fazer upload de arquivos com mais de 30Mb - 50Mb...

     

    Está funcionando todo Local, logo pensei que não teria essa dificuldade... gostaria de poder fazer upload de quantos Mb/Gb eu precisar...

     

    Preciso muito disso para o funcionamento do meu sistema.

     

    Desde já agradeço


  4. Estou desenvolvendo uma loja virtual e estou complementando com o checkout transparente do pagseguro (https://comunidade.pagseguro.uol.com.br/hc/pt-br/community/posts/220126928-Exemplo-de-Checkout-Transparente).

     

    Estou conseguindo pegar o preço dos produtos automaticamente, mas não consigo adicionar um preço de frete ou um desconto especial (extras).

     

    Não vejo onde pode ser colocado esse código automaticamente.

     

    Desde já agradeço à todos pela colaboração.


  5. Usei o seguinte código com prepared statement:

    <?php
    	$idDif="1";
    $options = [
        PDO::ATTR_ERRMODE            => PDO::ERRMODE_EXCEPTION,
        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
        PDO::ATTR_EMULATE_PREPARES   => false,
    ];
    $link = new PDO("mysql:host=$host;dbname=$db", "$user", "$pass", $options);
    $stmt = $link->prepare("SELECT * from `teste` WHERE idTeste!=?");
    $stmt->execute([$idDif]);
    $result = $stmt->fetchAll();
    
    foreach ($result as $row):
    ?>
    
    <h2 style="text-align:center;margin:0 auto">
        <?=$row["nomeTeste"]?>
    </h2>
    <br/>
    <div>
        <p>
            <?=$row["valorTeste"]?>
        </p>
        <hr style="color:black;width:10%"/>
    </div>
    
    <?php endforeach;?>

    e mesmo assim, o exploit continua.

     

    Não sei como fizeram para inserir dados no servidor e quando eu acesso meu banco de dados ele bloqueia.

     

     

    Como posso resolver?


  6. Olá

    Fiz um site e ao pôr online, depois de duas semanas ele foi "hackeado"/"exploited".

     

    Uso MySQLI para me conectar pelo banco de dados e descobri que é só quando eu uso 

    "SELECT * FROM"

    e eu uso a variável, que o exploit se "instala".

     

    Como no seguinte código:

    $sql4 = mysqli_query($con, "SELECT * FROM ... WHERE ... != '1' ORDER BY RAND() LIMIT 1") or die(mysqli_error($con));
    $ln4 = mysqli_fetch_assoc($sql4);
    $teste = $ln4['teste'];

     

    Quando eu coloco "echo" na variável $teste, o exploit "começa".

     

    Mas se eu não me conectar com o banco de dados, o exploit não funciona.

     

    Há como evitar isso?

    Não uso prepared statement, se eu usá-lo, não poderá mais ser hackeado?

     

    Como posso eviar isso?

     

    Conto com a ajuda de todos.

     

    Desde já agradeço


  7. Pessoal, desculpe pelo incômodo. CONSEGUI.

     

    if(isset($_POST['adicionar'])){
    		
    		$rows = array();
    		while($ln1 = mysqli_fetch_assoc($sql1)){
    			$campoSQL = $ln1['campo'];
    			$textoClienteSQL = $ln1['textoCliente'];
    			
    			$string = $_POST[$campoSQL];
    			
    			//array_push($rows[$textoClienteSQL], $string);
    			
    			$rows[$textoClienteSQL] = $string;
    		}
    		var_dump($rows);
    		
    	} //Fim isset POST

     


  8. Preciso pegar dados que eu não sei exatamente os "names" de cada input, então eu os pego por SQL (pois os cadastrei previamente) e pego os dados novos por POST:

     

    if(isset($_POST['adicionar'])){
    		
    		
    		
    		$rows = array();
    		while($ln1 = mysqli_fetch_assoc($sql1)){
    			$campoSQL = $ln1['campo'];
    			$textoClienteSQL = $ln1['textoCliente'];
    			
    			$string = $_POST[$campoSQL];
    			
    			array_push($rows[$textoClienteSQL], $string);
    		}
    		var_dump($rows);
    		
    	} //Fim isset POST

     

    Porém está dando um erro:

    Warning: array_push() expects parameter 1 to be array, null given

     

    Por que está dando esse erro? Ele está dando POST normalmente, mas não coloca dentro da Array.

     

    Desde já agradeço à todos


  9. Pessoal, consegui resolver.

     

    coloquei no index.php

    echo '
    			<script type="text/javascript">
    			$("#content'.$k.'").on("click", "button", function () {  //use event delegation
    			
    			$("#content'.$k.' .div").fadeToggle();
    			
    			});
    			</script>
    			';

     

    Entretanto ele "Toggle/Flash" 3 vezes antes de aparecer totalmente, sabem me dizer o por quê?


  10. Estou pegando um dado e dando request por Ajax para colocar o conteúdo em uma div. Porém no arquivo do ajax, eu tenho um javascript que executa a função "leia mais", mas não está funcionando.

     

    index.php

    echo '
    				
    				<div class="lightbox" id="lightbox'.$k.'">
    				<a href="#_">Fechar</a>
    				<div id="content'.$k.'"></div>
    				</div>
    				
    				';
    			
    			echo '
    			<script type="text/javascript">
    			
    			function showContent'.$k.'(obj){
    			var id = obj.getAttribute("class");
    
    			$.ajax({
    				type: "GET",
    				url: "getContent.php",
    				data: { q: id },
    			}).done( function( data ) {
    
    				document.getElementById("content'.$k.'").innerHTML = data;
    			});
    		}
    			
    			</script>
    			';

     

    getContent.php

    echo '<button>Leia Mais</button>';
    echo '<p class="div" style="display:none;">Teste de FadeToggle</p>';
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script>
    
        $("button").click(function(e){
    		e.preventDefault();
            $("p").fadeToggle();
        });
    </script>

     

    Porém o "Teste de FadeToggle" não aparece na div onde deveria aparecer pelo Ajax.

     

    Alguém tem alguma ideia do que pode ser o erro??

    Desde já agradeço à todos.


  11. Consegui!!!

    Segue o código atualizado:

    $sql2 = "SELECT * FROM contasreceber";
    		
    		
    		/* Por Data de Venda */
    		if($tipoData == "dataVenda" && $status = "" && $tipoReceber == "" && $cliente == ""){
    			
    			$sql2 .= " WHERE dataVenda between '$dataDe' AND '$dataAte' ORDER BY dataVenda ASC";
    		}
    		
    		elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente == ""){
    			
    			$sql2 .= " WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' ORDER BY dataVenda ASC";
    		}
    
    $qr2 = mysqli_query($con, $sql2) or die(mysqli_error($con));

     


  12. Valeu pela resposta.

     

    Mas eu preciso checar mais condições, só coloque duas, mas tenho mais, pois checo uma por uma:

     

    Dados Completos:

    /* Por Data de Venda */
    		if($tipoData == "dataVenda" && $status = "" && $tipoReceber == "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte'") or die(mysqli_error($con));
    		} 
    		
    		elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status'") or die(mysqli_error($con));
    		}
    		
    		elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber != "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber'") or die(mysqli_error($con));
    		}
    		
    		elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber != "" && $cliente != ""){
    			
    			$qSubst = substr($cliente, -1); // c / u
    			$idNormal = str_replace($qSubst, "", $cliente);
    			
    				$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber' && idCliente = '$idNormal'") or die(mysqli_error($con));
    		}
    		
    		elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente != ""){
    				$qSubst = substr($cliente, -1); // c / u
    				$idNormal = str_replace($qSubst, "", $cliente);
    			
    				$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status' && idCliente = '$idNormal'") or die(mysqli_error($con));
    		}
    		
    		
    		
    		
    		/* por Data de Pagamento */
    		
    		elseif($tipoData == "dataPagamento" && $status = "" && $tipoReceber == "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte'") or die(mysqli_error($con));
    		} 
    		
    		elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber == "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status'") or die(mysqli_error($con));
    		}
    		
    		elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber != "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber'") or die(mysqli_error($con));
    		}
    		
    		elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber != "" && $cliente != ""){
    			
    			$qSubst = substr($cliente, -1); // c / u
    			$idNormal = str_replace($qSubst, "", $cliente);
    			
    				$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status' && tipoReceber = '$tipoReceber' && idCliente = '$idNormal'") or die(mysqli_error($con));
    		}
    		
    		elseif($tipoData == "dataPagamento" && $status != "" && $tipoReceber == "" && $cliente != ""){
    				$qSubst = substr($cliente, -1); // c / u
    				$idNormal = str_replace($qSubst, "", $cliente);
    			
    				$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataPagamento between '$dataDe' AND '$dataAte' && status = '$status' && idCliente = '$idNormal'") or die(mysqli_error($con));
    		}

     


  13. Olá galera. 

     

    Tenho um form e dou POST normalmente e considerando os dados faz uma query diferente para cada caso.

     

    O problema é que não está identificando a query dentro do IF do Isset($_POST).

     

    antes do <head>

    if(isset($_POST['envia'])){
    
    		$dataDe = $_POST['dataDe'];
    		$dataAte = $_POST['dataAte'];
    		
    		$tipoData = $_POST['tipoData']; //dataVenda / dataPagamento
    		$status = $_POST['status']; //Pago / Em Andamento
    		$tipoReceber = $_POST['tipoReceber']; //Online / Presencial
    		$cliente = $_POST['cliente'];
    		
    		/* Por Data de Venda */
    		if($tipoData == "dataVenda" && $status = "" && $tipoReceber == "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte'") or die(mysqli_error($con));
    		} 
    		
    		elseif($tipoData == "dataVenda" && $status != "" && $tipoReceber == "" && $cliente == ""){
    			$sql2 = mysqli_query($con, "SELECT * FROM contasreceber WHERE dataVenda between '$dataDe' AND '$dataAte' && status = '$status'") or die(mysqli_error($con));
    		}
    }

     

    no <body>

    while($ln2 = mysqli_fetch_assoc($sql2)){
    
    $dados = $ln2['dados'];
    ...
    
    }

     

    Fiz isso em outra página com apenas uma condição e deu certo, mas com essas condições está dando erro.

     

    Erro: Undefined variable: sql2 

     

    Obrigado desde já.


  14. Olá à todos. Com a ajuda do Forum, consegui multiplicar valores de uma tabela dinamicamente com Ajax, entretanto nesse exemplo eu preciso digitar todos os conteúdos, isso é quantidade e valor unitário. Mas agora preciso pegar o valor unitário dinamicamente, do qual fiz com Ajax, mas não estão funcionando:

     

    O multiplicacao.php pega dados de Ajax do getProdServ.php e getProdServ.php. Mas ao pegar o dado pela linha 

    <div class="prodPreco"></div>

    para mostrar o resultado do Ajax por uma busca dinâmica com PHP, não calcula.

     

     

    multiplicacao.php

    <head>
    <script>
    
    	function showProdutos(str) {
            if (window.XMLHttpRequest) {
                // code for IE7+, Firefox, Chrome, Opera, Safari
                xmlhttp = new XMLHttpRequest();
            } else {
                // code for IE6, IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange = function() {
                if (this.readyState == 4 && this.status == 200) {
                    document.getElementsByClassName("prodserv")[0].innerHTML = this.responseText;
                }
            };
            xmlhttp.open("GET","getProdServ.php?tipo="+str,true);
            xmlhttp.send();
    }
    	
    </script>
    <script>
    
    	function showPreco(str) {
            if (window.XMLHttpRequest) {
                // code for IE7+, Firefox, Chrome, Opera, Safari
                xmlhttp = new XMLHttpRequest();
            } else {
                // code for IE6, IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange = function() {
                if (this.readyState == 4 && this.status == 200) {
                    document.getElementsByClassName("prodPreco")[0].innerHTML = this.responseText;
                }
            };
            xmlhttp.open("GET","getProdPreco.php?id="+str,true);
            xmlhttp.send();
    }
    	
    </script>
    </head>
    
    <body>
    <form action="" method="post" name="realizarPedido">
    	
    	<label>Cliente</label>
    	<br>
    	<select required name="cliente" id="cliente">
    		
    		<?
    		
    		$sql = "SELECT * FROM cliente ORDER BY nomeCliente ASC";
    		$qr = mysqli_query($con, $sql) or die(mysqli_error($con));
    		while($ln = mysqli_fetch_assoc($qr)){
    			
    			echo '<option value="'.$ln['idCliente'].'">'.$ln['nomeCliente'].'</option>';
    			
    		}
    		
    		?>
    		
    	</select>
    	<br><br>
    	
    	<label>Data Venda</label>
    	<br>
    	<input type="date" required name="dataVenda">
    	<br><br>
    	
    	
    	
    	
    	<table border="1" align="center" style="text-align: center;" cellpadding="1" cellspacing="1">
    	
    	<thead align="center">
    		
    		<tr>
    			<td>Tipo de Serviço</td>
    			<td>Produto / Serviço</td>
    			<td>Quantidade do Produto</td>
    			<td>Valor Unitário</td>
    			<td>Sub Total</td>
    		</tr>
    		
    	</thead>
    
    	<tbody id="body-table">
    		<tr>
    			<td><select required name="tipoVenda[]" id="tipoVenda" onChange="showProdutos(this.value)">
    					<option value="">Selecione uma Opção</option>
    					<option>Serviço</option>
    					<option>Produto</option>
    				</select></td>
    			<td><div class="prodserv"></div></td> <!-- Produto -->
    			
    			
    			
    			<td><input type="text" class="updateFields qtd" name="qtd[]"/></td>
    			<td><div class="prodPreco"></div></td>
    			<td><input type="text" class="updateFields valorsubtotal" name="valorsubtotal[]" /></td>
    		</tr>
    	</tbody>
    	
    	<tfoot>
    		<tr>
    			<td colspan="4" style="text-align:center">Total:</td>
    			<td><input type="text" id="total" name="total" style="font-weight: bolder" readonly /></td>
    		</tr>
    	</tfoot>
    	
    </table>
    	
    	
    	
    	<input type="submit" name="insertar" value="Cadastrar Item(ns)">
    	
    </form>
    
    <br>
    
    <button id="btn-addCell">Adicionar Cell</button>
    
    <button id="btn-acao">Atualizar</button>
      
      <!-- jQuery --> 
    <script src="../js/jquery-1.11.3.min.js"></script>
    
    
    
    <script>
    	
    
    	
    	
    	function getFieldNameByClass(classes){
    		classesArr = classes.split(" ");
    		for(x in classesArr){
    			if(classesArr[x] == 'qtd') return 'qtd';				
    			if(classesArr[x] == 'valorunitario') return 'valorunitario';				
    			if(classesArr[x] == 'valorsubtotal') return 'valorsubtotal';				
    		}
    	}	
    	
    	//Encapsulamos para poder chamar em outro contexto
    	var updateFields = function(){
    		var fields = document.getElementsByClassName("updateFields");
    		for (var i = 0; i < fields.length; i++) {
    			fields[i].addEventListener('keyup',  function() {
    				var thisTr = this.parentElement.parentElement;
    				var tdChilds = thisTr.childNodes;
    				
    				var subTotalLinha = {};
    				for(var y = 0;y < tdChilds.length; y++){
    					
    					//Pega apenas os Node reais
    					if(tdChilds[y].nodeType == tdChilds[y].ELEMENT_NODE){
    						//Dentro do Node (td) navega até o input td->input
    						var input = tdChilds[y].childNodes[0];
    											
    						var inputName = getFieldNameByClass(input.className);
    						subTotalLinha[inputName] = input.value;
    						//Deixa a referencia ao node, para atualizar após a conta
    						if(inputName == 'valorsubtotal'){
    							subTotalLinha['nodeRef'] = input;
    						}
    					}
    				}
    				
    				//is Defined or null?
    				if(subTotalLinha['qtd'] == null || subTotalLinha['qtd'] == '') return false;
    				if(subTotalLinha['valorunitario'] == null || subTotalLinha['valorunitario'] == '') return false;
    				
    				var qtd = parseFloat(subTotalLinha['qtd']);
    				var valorunitario = parseFloat(subTotalLinha['valorunitario']);			
    				
    				var subTotal = qtd * valorunitario;			
    				subTotalLinha['nodeRef'].value = subTotal;		
    				
    				
    				//Vamos somar todos os campos a classe valorsubtotal
    				var subtotalFields = document.getElementsByClassName("valorsubtotal");
    				var total = 0;
    				for(var i = 0; i < subtotalFields.length; i++){
    					if(subtotalFields[i].value != ''){
    						total += parseFloat(subtotalFields[i].value);
    					}
    				}
    				//Agora atualiza o campo 'Total'
    				document.getElementById("total").value = total;
    			}, false);
    		}
    	}
    	
    	
    	updateFields();
    	
    	
    </script>
    </body>

     

    getProdPreco.php

    <!DOCTYPE html>
    <html>
    <head>
    
    </head>
    <body>
    
    <?php
    
    	include "../connection.php";
    	
    $q = $_GET['id'];
    	
    	$qSubst = substr($q, -4); //Gera prod/serv
    	
    	/* Usar str_replace $q / $qSubst */
    	
    	$idNormal = str_replace($qSubst, "", $q);
    	
    	if($qSubst == "prod"){
    		
    		$sql = mysqli_query($con, "SELECT * FROM produto WHERE idProduto = '$idNormal'") or die(mysqli_error($con));
    		$ln = mysqli_fetch_assoc($sql);
    		$precoProdutoVenda = $ln['precoProdutoVenda'];
    		echo '<input type="text" readonly value="'.$precoProdutoVenda.'" class="updateFields valorunitario" name="valorunitario[]">';
    		
    	} elseif($qSubst == "serv"){
    		
    		$sql1 = mysqli_query($con, "SELECT * FROM servico WHERE idServico = '$idNormal'") or die(mysqli_error($con));
    		$ln1 = mysqli_fetch_assoc($sql1);
    		$precoServico = $ln1['precoServico'];
    		echo '<input type="text" readonly value="'.$precoServico.'" class="updateFields valorunitario" name="valorunitario[]">';
    	}
    	
    	
    ?>
    
    
    </body>
    </html>

     

    getProdServ.php

    <!DOCTYPE html>
    <html>
    <head>
    
    </head>
    <body>
    
    <?php
    
    	include "../connection.php";
    	
    $q = strval($_GET['tipo']);
    	
    	if($q == "Serviço"){
    		echo '
    		
    		<select required name="nomeProduto[]" onChange="showPreco(this.value)" class="updateFields select">
    		
    		<option value="" class="updateFields">Selecione uma Opção</option>
    		
    		';
    		
    		$sql = mysqli_query($con, "SELECT * FROM servico ORDER BY servico ASC") or die(mysqli_error($con));
    		while($ln = mysqli_fetch_assoc($sql)){
    			
    			$servico = $ln['servico'];
    			$precoServico = $ln['precoServico'];
    			$idServico = $ln['idServico'];
    			
    			echo '<option value="'.$idServico.'-serv" class="updateFields">'.$servico.'</option>';
    			
    		}
    		
    		echo '
    		
    		</select>
    		
    		';
    	} elseif($q == "Produto"){
    		
    		echo '<select required name="nomeProduto[]" onChange="showPreco(this.value)" class="updateFields select">
    		
    		<option value="" class="updateFields">Selecione uma Opção</option>
    		
    		';
    		
    		$sql1 = mysqli_query($con, "SELECT * FROM produto WHERE codigoProduto != '1' ORDER BY nomeProduto ASC") or die(mysqli_error($con));
    		while($ln1 = mysqli_fetch_assoc($sql1)){
    			
    			$idProduto = $ln1['idProduto'];
    			$nomeProduto = $ln1['nomeProduto'];
    			$precoProdutoVenda = $ln1['precoProdutoVenda'];
    			
    			echo '<option value="'.$idProduto.'-prod" class="updateFields">'.$nomeProduto.'</option>';
    			
    		}
    		
    		echo '
    		</select>';
    		
    	} else {
    		echo 'ERRO';
    	}
    	
    ?>
    
    
    </body>
    </html>

     

    Alguém saberia me dizer pq o Ajax está influenciando na multiplicação do Javascript, pois sem o Ajax funciona normalmente.

     

    Desde já agradeço à todos.

     


  15. Estou tentando desenvolver um sistema de loja com produtos "dinâmicos", ou seja, o usuário escolhe a foto que quer usar e coloca no produto e vai para o carrinho.

    Como nos sites http://www.fotoregistro.com.br/ e http://fancyproductdesigner.com/.

     

    Preciso muito disso, mas não sei por onde começar, poderiam me dizer qual a linguagem ou como eu posso fazer isso?

     

    OBS.: Desculpa se eu postei na sessão de PHP de forma errada.

     

    Agradeço desde já à todos.


  16. Estou pegando o tipo de frete por Ajax, porém o valor retornado, que precisa estar como:

    <input type="hidden" name="extras" value="'.$variavelAqui.'">

    não está funcionando.

     

    Estou usando o Ajax da seguinte forma:

    <script>
    
    	function showFreteValor(str) {
            if (window.XMLHttpRequest) {
                // code for IE7+, Firefox, Chrome, Opera, Safari
                xmlhttp = new XMLHttpRequest();
            } else {
                // code for IE6, IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange = function() {
                if (this.readyState == 4 && this.status == 200) {
                    document.getElementById("valorFrete").innerHTML = this.responseText;
                }
            };
            xmlhttp.open("GET","getValorFrete.php?tipoFrete="+str,true);
            xmlhttp.send();
    }
    	
    </script>

     

    Tudo que está dentro da div com id="valorFrete", o Pagseguro não identifica.

    Há como viabilizar esta div, talvez mudando o javascript??

     

    Desde já, agradeço à todos


  17. Consegui pessoal.

     

    Procurando na Internet, achei uma Function com Foreach que consegui usar no meu sistema:

    //Deletar Produto do Carrinho
    		if(isset($_GET['delete']) && isset($_GET['token'])){
    			$tokenDelete = $_GET['token'];
    			
    			foreach($_SESSION['carrinho'] as $subKey => $subArray){
    				if($subArray['token'] == $tokenDelete){
    					unset($_SESSION['carrinho'][$subKey]);
    				} //Fim if Foreach
    			} //Fim Foreach
    		} //Fim Delete
    		//Fim Deletar Produto do Carrinho

     

    Valeu pessoal por todo o apoio.

    VALEU


  18. Criei um token único para cada produto com uniqid(), agora não consigo dar unset usando este valor.

     

    $idProduto = $_GET['idProduto'];
    			  $tipoForma = $_GET['tipoForma'];
    			  $subSubForma = $_GET['subSubForma'];
    			  $fotoProduto = "";
    			  $idFotoProduto = "";
    			  $quantidade = 1;
    			  $token = uniqid(rand(), true);
    			  
    			  $arr = array("idProduto" => $idProduto, "tipoForma" => $tipoForma, "subSubForma" => $subSubForma, "fotoProduto" => $fotoProduto, "idFotoProduto" => $idFotoProduto, "Quantidade" => $quantidade, "token" => $token);

     

    usando var_dump():

    array (size=1)
      0 => 
        array (size=7)
          'idProduto' => string '22' (length=2)
          'tipoForma' => string '' (length=0)
          'subSubForma' => string '' (length=0)
          'fotoProduto' => string '' (length=0)
          'idFotoProduto' => string '' (length=0)
          'Quantidade' => int 1
          'token' => string '2388858c418a61548b6.16153712' (length=28)

     

    e tentei dar unset dessar forma:

    if(isset($_GET['delete']) && isset($_GET['token'])){
    			$tokenDelete = $_GET['token'];
    			
    			unset($_SESSION['carrinho']["token"][$tokenDelete]);
    		}

     

    mas não deu certo, como posso dar unset com o token específico??


  19. Novamente, agradeço pelas respostas.

     

    Sim, eu sei que posso fazer unset dessar forma, o problema é que eu não sei como fazer para pegar o 2, pois cada vez que adiciona um produto no carrinho, cria uma Key na Array. Preciso pegar essa Key dinâmica.

     

    Como posso proceder??

×

Important Information

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