Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  

Recommended Posts

Postado (editado)

Boa noite, eu estou querendo fazer um cadastro com PHP  e XML, porém não encontrei nenhuma fonte na internet que fale sobre como fazer um sistema de cadastro com a base de dados em XML, eu quero que toda vez que o cliente faça um cadastro o valores que ele colocar dentro do form vai direto para um arquivo XML, ai toda vez que cadastrar um cliente novo só faz adicionar as informações no arquivo XML sem precisar criar um novo arquivo.

 

<html>
<body>
    <form method="post" action="cadastro.php">
         informações <br>
         Nome <input type="text" name="nome"> <br>
         Endereco <input type="text" name="endereco"> <br>
         <input type="submit" name="insert" value="add">
     </form>
</body>
</html>

 

Editado por DiF
Acrescentar o código com o botão CODE <>

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Leonardo Paiva Vieira Olá,  O ideal é que você use de fato um banco de dados quando se trata de cadastros.  Contudo, dá para fazer algo bem simples para armazenar o ID o cliente, o nome e o endereço.

 

Vamos ao código:

<?php
//Pega os dados vindo do formulário
$nome     = $_POST["nome"];
$endereco = $_POST["endereco"];

//Gera um valor único e aletório para simular o auto increment do banco de dados
$id =  uniqid();

//Carrega o arquivo 
$xml = simplexml_load_file("usuarios.xml");

//Cria um elemento
$filho = $xml->addChild('cliente');
//Adiciona um elemento id para o cliente
$filho->addAttribute("id", $id);

//Cria um elemento nome
$filho->addChild('nome',$nome);
//Cria um elemento endereço
$filho->addChild('endereco',$endereco);

//Testa se salvou. Se sim, mostra mensagem de sucesso e volta ao formulário.
if(file_put_contents("usuarios.xml", $xml->asXML())):
    echo "<script>
           alert('Cliente Cadastrado!');
           window.location.href='index.html';
         </script>";
      
else :
    echo"<script>
           alert('Deu erro.');
           window.location.href='index.html';
         </script>";
endif;

Basicamente isso. Toda vez que inserir um novo cliente, ele será incluído no arquivo xml criado.

 

PS: Crie o arquivo usuarios.xml e pelo menos crie um elemento ROOT. 

Ficando desta forma:

<?xml version="1.0" encoding="UTF-8"?>
<clientes></clientes>

Desta forma, o php não acusará erro ao tentar carregar o arquivo xml.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Postado (editado)

Estou com outro problema!

Eu consigo pegar as informações do XML, porém eu quero que verifica se o email digitado pelo o cliente esteja no XML.

 

<?php
    $email_form = $_POST['email'];
    $senha_form = $_POST['senha'];
    
    $filename = 'Clientes_Dados.xml';
    $email = simplexml_load_file($filename) -> emails -> email;
    $senha = simplexml_load_file($filename) -> senhas -> senha;
    
    if(in_array($email_form, $email, true)){
        echo $email_form;
    }
?>

 

<?xml version="1.0" encoding="UTF-8"?>
<clientes>
  <nomes>
    <nome value="1"> Leonardo Paiva Vieira </nome>
    <nome value="2"> Eugênia Guimarães </nome>
  </nomes>
  <telefones>
    <telefone value="1"> (64) 99999999 </telefone>
    <telefone value="2"> (64) 99999999 </telefone>
  </telefones>
  <sexos>
    <sexo value="1"> Masculino </sexo>
    <sexo value="2"> Feminino </sexo>
  </sexos>
  <emails>
    <email value="1"> leonardopaiva_ipora@hotmail.com </email>
    <email value="2"> eugenia_guimaraes@hotmail.com </email>
  </emails>
  <senhas>
    <senha value="1"> 12345678 </senha>
    <senha value="2"> 12345678 </senha>
  </senhas>
</clientes>

 

Editado por DiF
Inserir os códigos com o botão CODE <>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×