Ir para conteúdo

Samuel Pietro

Members
  • Total de itens

    69
  • Registro em

  • Última visita

  • Dias vencidos

    5

Tudo que Samuel Pietro postou

  1. Samuel Pietro

    Exibir consulta JSON com PHP

    Olá pessoal! Preciso da ajuda de vocês no seguinte! Tenho um arquivo retornos.json { "retornos": [ { "id": 1, "sigla": "00", "nome": "Efetuado" }, { "id": 2, "sigla": "01", "nome": "Inválido" }, { "id": 3, "sigla": "02", "nome": "Corrompido" } ] } E na minha aplicação feita com CodeIgniter tenho uma consulta que me mostra a sigla que está cadastrada no BD. foreach ($results as $r) { $retorno = $r->codRetorno; } Eu preciso que essa consulta ao me retornar a sigla 02 por exemplo o echo apresente o "nome" para tal "sigla" que esta cadastrada no JSON. No caso seria a seguinte lógica: if ("$retorno" == JSON["sigla"]){ echo JSON["nome"]; } //ESTE NÃO É UM CÓDIGO VÁLIDO, É APENAS PARA FINS DE ENTENDER A LÓGICA DO QUE EU PRECISO. // PS. ESSA LOGICA PRECISA SER APLICADA DENTRO DE UM FOREACH COM MILHARES DE REGISTROS. Como eu posso fazer isso?
  2. Vou criar uma rotina completa voltada nessa situação, Para o exemplo a seguir usei PDO para fazer a conexão ao banco de dados. ESTE É O ARQUIVO conexao.php <?php // DEFININDO AS VARIAVEIS PARA A CONEXÃO COM O BD, ALTERAR CONFORME OS SEUS DADOS DE ACESSO define( 'MYSQL_HOST', 'localhost' ); define( 'MYSQL_USER', 'usuario' ); define( 'MYSQL_PASSWORD', 'senha' ); define( 'MYSQL_DB_NAME', 'nome_do_banco' ); // FAZ A CONEXÃO E CASO DÊ ERRO EXIBE QUE NÃO FOI POSSIVEL CONECTAR try{ $pdo = new PDO( 'mysql:host=' . MYSQL_HOST . ';dbname=' . MYSQL_DB_NAME, MYSQL_USER, MYSQL_PASSWORD ); } catch ( PDOException $e ){ echo 'Erro ao conectar com o MySQL: ' . $e->getMessage(); } ESTE É O ARQUIVO consulta.php <?php //CARREGA AS INFORMAÇÕES DA CONEXÃO include_once "conexao.php"; $projeto = "11"; //SUPONDO QUE VOCÊ ESTA CONSULTANDO AS INFORMAÇÕES DA FASE DO PROJETO 11 //CRIA A STRING COM SEU SELECT //(SELECIONA TODOS OS CAMPOS DA TABELA "tblprojetos" COM A COLUNA "idprojeto" IGUAL A VARIAVEL $projeto) $sql = "SELECT * FROM tblprojetos WHERE idprojeto='$projeto'"; $result = $pdo->query( $sql ); $rows = $result->fetchObject(); //DEFINE A VARIAVEL $fase COM A INFORMAÇÃO OBTIDA NA COLUNA fase $fase = $rows->faseprojeto; //VERIFICANDO SE A FASE É IGUAL A 2 if ($fase == 2) { $msgfase = "Mensagem: Fase é igual a 2"; } else { $msgfase = "Mensagem: Fase não é igual a 2, a fase atual é: ".$fase; } Agora basta inserir o seguinte código onde você precisar que seja adicionado a Mensagem; <?php echo $msgfase; ?> Eu imaginei como se fosse a consulta para a fase de andamento de alguns projetos; e como base usei a seguinte tabela no banco de dados CREATE TABLE `tblprojetos` ( `idprojeto` int(5) NOT NULL, `nomeprojeto` varchar(256) NOT NULL, `faseprojeto` int(2) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ALTER TABLE `tblprojetos` ADD PRIMARY KEY (`idprojeto`); ALTER TABLE `tblprojetos` MODIFY `idprojeto` int(5) NOT NULL AUTO_INCREMENT; COMMIT; Espero que eu tenha ajudado!
  3. Samuel Pietro

    Formulário com muitos campos php mysql

    Veja mais sobre codeIgniter, ou mesmo que outros frameworks do tipo. Com frameworks MVC você consegue automatizar processos referentes ao CRUD de forma muito rápida e dinâmica.
  4. Use o seguinte código: $fase = //RESULTADO DO SEU SELECT if ($fase == 2) { echo "Mensagem: Fase é igual a 2" }else {} Caso precise que cria a consulta para gerar seu select me informe qual drive você está usando atualmente (PDO, MySQLi, etc).
  5. Samuel Pietro

    UPDATE apenas nos campos em branco

    Estou com a seguinte situação. Preciso que o Update só aconteça nos campos vazios. Por exemplo, tenho no CSV id;a;b;c 1;1;;3 1;1;2;; |id | a | b | c | | 1 | 1 | | 3 | | 1 | 1 | 2 | | Na primeira linha tenho o campo da coluna b em branco, logo ele irá inserir no banco de dados o conteúdo da primeira linha, quando ele ler a segunda linha irá ver que a minha key, que é a coluna id, já existe e irá atualizar, o problema é que eu preciso que atualize apenas os campos em branco, pois se atualizar todos os campos ele iria substituir o campo da coluna c que ficaria em branco ! O código que fiz até o momento! INSERT INTO tabela (id, a, b, c) VALUES ('$column[0]','$column[1]','$column[2]','$column[3]') on duplicate key UPDATE id='$column[0]',a='$column[0]', b='$column[0]', c='$column[0]' Gostaria da ajuda de vocês para saber como posso adequar esse código na minha necessidade, seria tipo adcionar is null UPDATE.. sei lá, tentei várias opções mas sem sucesso ainda!
×

Informação importante

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