ikkinet

Membros
  • Content Count

    439
  • Joined

  • Last visited

Community Reputation

0 Neutro

About ikkinet

  • Rank
    Pedro Moreira
  • Birthday 06/20/1986

Contatos

Perfil

  • Gender
    Male
  • Location
    Campinas/SP
  1. http://php.net/manual/pt_BR/function.str-getcsv.php#114764 Veja mais sobre esse link
  2. ikkinet

    AJUDA PHP Front-end

    Se já está nesse formato, você pode tentar fazer o SELECT usando o IN $conn->query("SELECT * FROM tb_cat_produtos WHERE id_categoria IN (".$tb_catalogos['id_categoria'].")")
  3. Bom, vou partir do pressuposto que você tem a tabela "pessoa" e que tem a tabela "evento" e terá a tabela "pessoa_evento" para vincular as duas. Daí você lê o CSV, quebra as linhas e colunas. Não vou entrar nesse mérito porque vou assumir que essa parte você já tem pronto. Daí, você faz: foreach($linhas as $l) { $pessoa = $conn->query("SELECT * FROM pessoa WHERE cod_emp = ".$l['cod_emp']); if($pessoa->num_rows == 0){ $conn->query("INSERT INTO pessoa (cod_emp, cp_nome, cpf, cp_nome_cargo) VALUES (".$l['cod_emp'].", '".$l['cp_nome']."', '".$l['cpf']."', '".$l['cp_nome_cargo']."'); } $evento = $conn->query("SELECT * FROM evento WHERE cod_event = ".$l['cod_event']); if($evento->num_rows == 0){ $conn->query("INSERT INTO evento (cod_event, cp_nome_eve, sq_cargo) VALUES (".$l['cod_event'].", '".$l['cp_nome_eve']."', '".$l['sq_cargo']."')"); } $conn->query("INSERT INTO pessoa_evento (cod_emp, cod_event, competencia) VALUES (".$l['cod_emp'].", ".$l['cod_event'].", '".$l['competencia']."')"); } Eu não testei o código, fui fazendo agora, mas a lógica é mais ou menos essa. A cada loop ele verifica se já existe a pessoa no banco, se não existir, insere. O mesmo com o evento. Daí ele vincula os dois na terceira tabela.
  4. Bom, eu criei a mesma estrutura que você, usando o mae.php e filha.php do primeiro post e o test.php do segundo (que dá o include nos dois arquivos). Pra mim, o que apareceu não foi um erro, foi um Warning, mas que afeta totalmente o funcionamento dos scripts: Notice: Undefined variable: palavra in /var/www/html/mae.php on line 7 O que acontece é que, na função imprimePalavra da classe mae, você dá um echo na variável $palavra. Dentro do método, essa variável não existe. Para acessar a variável da classe, é preciso usar $this->palavra. Fazendo apenas esta alteração, funcionou corretamente aqui.
  5. ikkinet

    PHPMailer e Locaweb

    Está enviando várias vezes porque a chamada ao ajax está dentro do map(). O map percorre cada campo e, para cada campo que ele percorre, ele chama o ajax postando a informação e, portanto, enviando um email. Um jeito fácil de resolver isso é setando uma variável de controle de erro. Aí depois verifica a variável e depois chama o ajax. Algo mais ou menos assim: //Percorrendo os campos var erro_form = false; $.map(campos, function(campo){ // ======= Minha enorme validação :P if ( /* algo errado */ ) { erro_form = true; } }); if (! erro_form ){ $.ajax({ type: "POST", url: script_reservas, data: campos, beforeSend: function(){ status.hide().html('<p style="color: #337AB7"><img src="'+ tema +'images/loading_icon.svg"> Enviando ...</p>').fadeIn(); }, error: retorno, success: retorno, complete: function(){form_reservas.get(0).reset();} }); }
  6. ikkinet

    Verificar usuário com PDO

    Bom, pra começar a lógica do seu if está falha: if (!empty($usuario) AND !empty($senha)) { Com o if desse jeito, se você digitar o usuário e a senha ele vai entrar na condição e vai dar o refesh. O certo seria: if (empty($usuario) || empty($senha)) {
  7. ikkinet

    Soma SQL errada!

    A princípio, eu faria diferente. Eu já iria somando em uma variável, no próprio php, os valores dentro do loop. Evita ter que fazer uma nova consulta só para obter uma soma de valores que eu já tenho em tempo de execução. De qualquer forma, se ainda quer continuar fazendo uma nova query, o WHERE da query que traz os resultados é exatamente o mesmo? Porque a soma está sendo feita no mysql, e não no php, logo, o "erro" está na consulta.
  8. Isso, provavelmnete, é da codificação do Json. Tenta usar um var_dump no array antes de usar o json_encode.
  9. Cara, Nesse caso específico, o mais fácil para você fazer é colocar isso na sua query. Dá pra fazer isso no código, também, mas na query resolve. if($_GET['operacao'] == 'banners'){ header('Content-Type: application/json; charset=utf-8'); $url = "http://www.site.com.br/"; $rs = $mysqli->query("SELECT CONCAT(".$url.",foto) AS image FROM banners"); $registros = mysqli_num_rows($rs); $arr = array(); while($row = $rs->fetch_assoc()) { $arr[] = $row; } $json_encode = json_encode($arr); echo $json_encode; }
  10. Bom, a primeira coisa é que você não tá fechando corretamento, a tag de declaração do iframe. Falta um > Não sei se foi erro só aqui na hora de escrever, mas isso seria o bastante pra acontecer algo desse tipo, porque ele não considera que o </ esteja realmente fechando o iframe, colocando todo o restante dentro desse iframe.
  11. Pelo que vi, o preço padrão é 50 e cada item marcado, acrescenta 10, certo? Faz o seguinte. No código, pode ser onde você vai imprimir, mesmo, coloca: $valor = 50; if($dvd == 'SIM') $valor += 10; if($banner == 'SIM') $valor += 10; $valor = number_format($valor, 2, ',', '.'); echo 'R$ '.$valor; Vê se é isso mesmo que quer, se não for, avisa aqui.
  12. De qualquer jeito os dados do primeiro formulário serão gravado? Partindo do pressupost que sim, é só salvar esses dados no banco, normalmente.. Depois verifica, se o cara marcou sim, aparecem esses três campos apenas e atualiza a tabela no registro inserido (mysql_insert_id). Se não, já está pronto..
  13. Cara. Pra saber mais detalhes de porque está dando erro, na parte do else, em que manda imprimir que deu erro, coloca assim: echo "deu erro: ".mysql_error(); Imprimirá uma mensagem de retorno do MySQL que poderá te dizer o que está acontecendo que está dando erro.
  14. Use a função date() do PHP, com o parâmetro "H" para horas com o zero inicial (se aplicável), "i" para minutos com o zero inicial (se aplicável) e "s" para segundos com zero inicial (se aplicável). Veja o link para mais detalhes.