Jump to content
RichardOptions

[Iniciante] Array nessa forma, Array na tabela? [Resolvido]

Recommended Posts

Olá pessoal, estou novamente aqui pedindo auxílio aos mestres!

Estou há mais de 18 horas fazendo exercícios que preciso entregar para amanhã, são 10, já foram 8, faltam só 2, mas estes mesmo após horas de vídeo-aula, google e manual php, não to conseguindo fazer o link mental.

Então peço ajuda novamente!

 

Vou deixar os 2 exercícios que faltam e quem puder me dar uma luz de onde estou errando e como seguir, agradeço.

Exercício 9

<?php
/**
* Exercício 9
* Considere que você tem uma página chamada cidades.php, que contém um array $cidades da seguinte forma:
* <?php
* $cidades["PR"][] = "Curitiba";
* $cidades["PR"][] = "Londrina";
* $cidades["PR"][] = "Pinhais";
* $cidades["SC"][] = "Florianópolis";
* ?>
* Essa página, ao receber por GET a variável “estado”, deverá exibir apenas o nome
* das cidades, em ordem alfabética, que pertencerem ao estado. Se não houver cidades
* do estado informado, deverá exibir a mensagem: “Não há cidades desse estado”. Se a
* variável “estado” não for informada, a página deverá exibir todas as cidades no
* seguinte formato: “Cidade – Sigla do Estado”, ordenadas alfabeticamente por estado e cidade.
*/

header('Content-Type: text/html; charset=utf-8');

$cidades["PR"][] = "Curitiba";
$cidades["SP"][] = "São Paulo";
$cidades["PR"][] = "Pinhais";
$cidades["SC"][] = "Florianópolis";
$cidades["RJ"][] = "Niterói";

if(!empty($_GET['estado'])){

    $getEstado = $_GET['estado'];

    echo "Estado consultado: " . $getEstado . "<br><br>";

    foreach ($cidades as $chave => $valor) {
        echo "$chave: $valor \n";
    }

} else {
    echo "Você precisa inserir um UF em 'estado'";
}

?>

Eu não sei como trabalhar e bolar a lógica usando esse tipo de array, sei que pode ser simples pra quem tem total conhecimento em arrays, mas não sei mais pra onde correr.

[Exercício 9 - Resolvido e compreendido com a ajuda do parceiro Gleyson]

 

 

Exercício 10:

<?php
/**
* Exercício 10
* Dado um array com o nome das capitanias hereditárias, exiba-os em ordem
* ascendente ou descendente. Para isso, ao lado do cabeçalho da tabela, coloque dois
* links: um indicando para cima e outro, para baixo. Ao clicar “para cima” ou quando não
* houver indicação, os nomes deverão ser exibidos alfabeticamente; ao clicar para
* baixo, a exibição deverá ser invertida.
*/

$capitanias = array(
    "CAPITANIAS MARANHÃO",
    "CAPITANIA CEARÁ",
    "CAPITANIA RIO GRANDE",
    "CAPITANIA ITAMARACÁ",
    "CAPITANIA PERNAMBUCO",
    "CAPITANIA BAHIA",
    "CAPITANIA ILHÉUS",
    "CAPITANIA PORTO SEGURO",
    "CAPITANIA ESPIRITO SANTO",
    "CAPITANIA SÃO TOMÉ",
    "CAPITANIA RIO DE JANEIRO",
    "CAPITANIA SANTO AMARO",
    "CAPITANIA SÃO VICENTE",
    "CAPITANIA SANTANA"
);

//foreach ($capitanias as $lista) {
//    echo $lista . "<br>";
//}

?>
<html>
<body>
<title>Exercício 10</title>
<table border="1px">
<?php foreach ($capitanias as $lista) { ?>
    <tr>
        <th><?php echo $lista;?></th>

    </tr>
<?php } ?>
</table>
</body>
</html>

No exercício 10 consegui chegar até certo ponto, que foi montar a lista dentro de uma tabela normal, mas mas agora também me perdi porque não sei como fazer esses 2 links pra ordenar de forma diferente a tabela...

 

Bem, é isso pessoal, sei que não é muito, mas agradeço quem puder me ajudar em tão pouco tempo que tenho, ainda mais em um domingo.

Share this post


Link to post
Share on other sites
6 horas atrás, RichardOptions disse:

foreach ($cidades as $chave => $valor) {

por:

6 horas atrás, RichardOptions disse:

foreach ($cidades[$getEstado] as $chave => $valor) {

 

Troque seu $cidades[$getEstado] para pegar somente os valores que correspondem ao estado solicitado.

---------------------------------------------------------------------------------------

 

6 horas atrás, RichardOptions disse:

$getEstado = $_GET['estado'];

por

6 horas atrás, RichardOptions disse:

$getEstado =strtoupper( $_GET['estado']);

$getEstado ele esta vindo em minusculas, dentro do $cidades[PR] o PR está em maiúsculas então botei para todas as letras dentro de $getEstado ficar em maiúsculas.

  • Obrigado! 1

Share this post


Link to post
Share on other sites
37 minutes ago, Gleyson Abreu said:

por:

 

Troque seu $cidades[$getEstado] para pegar somente os valores que correspondem ao estado solicitado.

---------------------------------------------------------------------------------------

 

por

$getEstado ele esta vindo em minusculas, dentro do $cidades[PR] o PR está em maiúsculas então botei para todas as letras dentro de $getEstado ficar em maiúsculas.

 

Boa noite, Gleyson! Obrigado pela resposta e pela ajuda.

É nessa parte que eu estou perdido, em pegar os valores correspondentes ao estado solicitado.

Ainda tentando aqui...

 

Mas obrigado pela resposta!

Share this post


Link to post
Share on other sites
3 minutos atrás, RichardOptions disse:

 

Boa noite, Gleyson! Obrigado pela resposta e pela ajuda.

Mas você confundiu, são 2 códigos diferentes, no caso 2 exercícios. O primeiro que tem o array de cidades é 1 código. Onde preciso listar as cidades do estado recebido pelo $getEstado.

 

O abaixo,que tem a lista das capitanias, é outro exercício, onde preciso montar essa lista em uma tabela com ordem crescente ou decrescente.

 

Mas obrigado pela resposta!

Sim eu entendi eu enviei a ajuda somente do primeiro código o de mostrar apenas as cidades dos estado, adicionei um if para verificar se há cidades no estado informado:

<?php
/**
* Exercício 9
* Considere que você tem uma página chamada cidades.php, que contém um array $cidades da seguinte forma:
* <?php
* $cidades["PR"][] = "Curitiba";
* $cidades["PR"][] = "Londrina";
* $cidades["PR"][] = "Pinhais";
* $cidades["SC"][] = "Florianópolis";
* ?>
* Essa página, ao receber por GET a variável “estado”, deverá exibir apenas o nome
* das cidades, em ordem alfabética, que pertencerem ao estado. Se não houver cidades
* do estado informado, deverá exibir a mensagem: “Não há cidades desse estado”. Se a
* variável “estado” não for informada, a página deverá exibir todas as cidades no
* seguinte formato: “Cidade – Sigla do Estado”, ordenadas alfabeticamente por estado e cidade.
*/

header('Content-Type: text/html; charset=utf-8');
$cidades["PR"][] = "Curitiba";
$cidades["SP"][] = "São Paulo";
$cidades["PR"][] = "Ainhais";
$cidades["SC"][] = "Florianópolis";
$cidades["RJ"][] = "Niterói";

if(!empty($_GET['estado'])){
    $getEstado = strtoupper($_GET['estado']);
    echo "Estado consultado: ".$getEstado."<br><br>";
    if(isset($cidades[$getEstado])){

    	foreach ($cidades[$getEstado] as $chave => $valor) {
        	echo "$chave: $valor \n";
    	}
    }else{
    	echo "Não há cidades do estado informado.";
    }


} else {
    echo "Você precisa inserir um UF em 'estado'";
}

?>

 

  • Obrigado! 1

Share this post


Link to post
Share on other sites
6 minutes ago, Gleyson Abreu said:

Sim eu entendi eu enviei a ajuda somente do primeiro código o de mostrar apenas as cidades dos estado, adicionei um if para verificar se há cidades no estado informado:

 

Ah, eu até editei antes o meu post ali, eu que entendi errado, olhando agora, entendi o que eu tinha que ter feito no exercício.

Tirando o "echo" de testes ali que tava dando erro, tudo certinho agora, show!

Acho que vou demorar pra pegar o jeito com os Arrays.

 

Agora vou focar no último exercício, esse com tabelas que eu só consegui imprimir a lista de arrays dentro, mas não faço ideia de como fazer pra links indicando a ordem como está descrito, mas vamos lá!

 

Muito obrigado pela ajuda Gleyson, você não tem ideia do tempo que eu to nisso e preciso entregar amanhã, to na loucura aqui.

Share this post


Link to post
Share on other sites
23 minutos atrás, RichardOptions disse:

 

Ah, eu até editei antes o meu post ali, eu que entendi errado, olhando agora, entendi o que eu tinha que ter feito no exercício.

Tirando o "echo" de testes ali que tava dando erro, tudo certinho agora, show!

Acho que vou demorar pra pegar o jeito com os Arrays.

 

Agora vou focar no último exercício, esse com tabelas que eu só consegui imprimir a lista de arrays dentro, mas não faço ideia de como fazer pra links indicando a ordem como está descrito, mas vamos lá!

 

Muito obrigado pela ajuda Gleyson, você não tem ideia do tempo que eu to nisso e preciso entregar amanhã, to na loucura aqui.

E falando do exercicio 10 ele quer que você ponhe em ordem alfebetica e só você em baixo do array $capitanias o seguinte:

asort($capitanias) para ordem alfabética a-z ou

arsort($capitanias) para ordem inversa.

Você pode passar um parametro GET[] na url para identificar se é ordem alfabética ou a inversa:

ex:

www.seusite.com/?ordem=ascendente 

$ordem = $_GET['ordem'];
if($ordem == 'ascendente'){
	asort($capitanias); // Ordem alfabetica
}elseif($ordem == 'descendente'){
	arsort($capitanias); // inverte a ordem alfabetica.
}else{
	echo "Ordem desejada não existe"; // ou em vez do echo ponha em ordem alfabeta etc...
}

Fiz assim de bate-pronto..

  • Obrigado! 1

Share this post


Link to post
Share on other sites
59 minutes ago, Gleyson Abreu said:

E falando do exercicio 10 ele quer que você ponhe em ordem alfebetica e só você em baixo do array $capitanias o seguinte:

asort($capitanias) para ordem alfabética a-z ou

arsort($capitanias) para ordem inversa.

Você pode passar um parametro GET[] na url para identificar se é ordem alfabética ou a inversa:

ex:

www.seusite.com/?ordem=ascendente 


$ordem = $_GET['ordem'];
if($ordem == 'ascendente'){
	asort($capitanias); // Ordem alfabetica
}elseif($ordem == 'descendente'){
	arsort($capitanias); // inverte a ordem alfabetica.
}else{
	echo "Ordem desejada não existe"; // ou em vez do echo ponha em ordem alfabeta etc...
}

Fiz assim de bate-pronto..

 

Show, entendi a lógica, já tá montando certo na tabela, agora só preciso acertar o último detalhe, que seria:

 

"Para isso, ao lado do cabeçalho da tabela, coloque dois links: um indicando para cima e outro, para baixo. Ao clicar “para cima” ou quando não houver indicação, os nomes deverão ser exibidos alfabeticamente; ao clicar para baixo, a exibição deverá ser invertida."

 

Seria assim?

<html>
    <body>
        <title>Exercício 9</title>
            <table border="1px">
                <pre><a href="exibir.php?ordem=ascendente">Para Cima</a></pre>
                <pre><a href="exibir.php?ordem=descendente">Para Baixo</a></pre>
                <?php foreach ($capitanias as $lista) { ?>
                <tr>
                    <th><?php echo $lista;?></th>
                </tr>
                <?php } ?>
            </table>
        </body>
</html>

E Gleyson, muito obrigado por tudo até agora cara, tá me ajudando de todas as maneiras possíveis que eu não imaginei conseguir em um domingo de copa do mundo, obrigado!

Share this post


Link to post
Share on other sites

Exercício 1
O enunciado diz:
...deverá exibir apenas o nome  das cidades, em ordem alfabética,..

É preciso ajustar o script para não ecoar a $chave e ordenar alfabeticamente (notar que as cidades ecoam na ordem que aparecem no array das cidades).
 

 

  • Obrigado! 1

Share this post


Link to post
Share on other sites

Eu botaria assim ficando alinhado dentro da tabela e no lugar dos nomes 'pra cima', 'pra baixo' botaria uma imagem ou até mesmo em css de uma seta correspondente.

	<tr>
        <th>
            Capitanias
            <a href="exibir.php?ordem=ascendente">Para Cima</a>
            <a href="exibir.php?ordem=descendente">Para Baixo</a>
        </th>
    </tr>

 

  • Obrigado! 1

Share this post


Link to post
Share on other sites

Maujor, já removi a chave, não tinha notado, foi um pouco de falta de atenção, é um detalhe, mas detalhes importam, obrigado!

 

2 hours ago, Gleyson Abreu said:

Eu botaria assim ficando alinhado dentro da tabela e no lugar dos nomes 'pra cima', 'pra baixo' botaria uma imagem ou até mesmo em css de uma seta correspondente.

 

Coloquei assim mesmo, ficou bacaninha. Valeu a dica, CSS não é muito minha praia, como é um exercício e eu já estou há mais de 30 horas nisso, vou evitar o trabalho adicional por agora.

 

Aproveitando, queria saber se você pode me dizer se meu outro exercício, fiquei com a pulga atrás da orelha, mas acho que está certo:

 

<?php
/**  Exercício 8
* Dado um formulário POST com um campo de busca, que é submetido à página
* busca.php, implemente-a considerando a seguinte regra: se a palavra digitada
* constar em um array de palavras, a página deverá retornar as posições em que a
* palavra encontra-se. */

if (!empty($_POST['busca'])) {
    $getBusca = $_POST['busca'];

    $palavras = array(
        "Carro",
        "Moto",
        "Skate",
        "Bicicleta",
        "Patins",
        "Metro"
    );

echo "A palavra-chave usada na busca foi: " . $getBusca . "<br><br>";

foreach($palavras as $resultado) {
    if((strtolower($resultado)) == strtolower($getBusca)) {
        $resultado_final[] = $resultado;
    }
}
if(isset($resultado_final)){
    array_column($resultado_final, 0);
    echo "<pre>";
    print_r(array_values($resultado_final));
    echo "<pre>";
}
} else {
    echo "Você não digitou nenhuma palavra chave para buscar!";
}


?>
<title>Exercício 8</title>
<form method="POST">
    Busca: <input name="busca" type="text"><br>
<input type="submit">
</form>

Digito a palavra-chave no campo busca, caso encontre no array, ele me retorna:

A palavra-chave usada na busca foi: carro
 

Array
(
    [0] => Carro
)

Regra: se a palavra digitada constar em um array de palavras, a página deverá retornar as posições em que a palavra encontra-se.

 

Minha dúvida, se o único resultado mostrado, encontra-se no array, sempre será a posição 1, não?

Então pra mim, pelo que entendi, está certo esse código referente ou to perdido de novo? 

 

Novamente, obrigado Gleyson, você foi fora de série

Share this post


Link to post
Share on other sites
2 horas atrás, RichardOptions disse:

Regra: se a palavra digitada constar em um array de palavras, a página deverá retornar as posições em que a palavra encontra-se.

 

Esse exercício ta pedindo pra você retornar a posição (index/key) do array e não a posição do novo array que você ta criando.

 

Contextualizando melhor:

Se no seu código atual eu pesquisar por "Metro", vai me retornar Metro na posição 0:

image.png.ab9c32f0f3d9e2388ab3dec05f3af810.png

 

Porém, o exercício pede que você retorne a posição do array onde está todas as palavras, que no caso do Metro seria 5:

image.png.27e4fb6e0f0d35423ced594ec386c945.png

 

O que você ta fazendo é apenas printar o novo array ($resultado_final) que você mesmo ta criando, aí acaba gerando novas posições diferentes, pq você ta construindo um novo array.

 

As únicas coisas que você tem que fazer é o seguinte:

alterar o foreach e mexer um pouco na lógica:

remover: 

array_column($resultado_final, 0);

remover:

array_values()

Esses dois caras aí só ta te atrapalhando.

Agora, aqui é a lógica que você precisa entender:

foreach($palavras as $key => $value) {
  if((strtolower($value)) == strtolower($getBusca)) {
  	$resultado_final[$value] = "Posição: " . $key;
  }
}

Antes você só tava usando

foreach($palavras as $resultado)

porém, com o foreach você consegue capturar a key (posição) de cada valor do array, fazendo isso:

foreach($palavras as $key => $value)
  • $palavras = o array que você quer percorrer
  • $key = a posição no array (0,1,2,3,4 ou posições com nomes)
  • $value = o valor (Carro, Moto, Skate etc)

resultado das alterações:

image.png.136ad953c663c8c77ef75c17193df6ee.png

 

Segue aí o código pra você estudar e adaptar:

<?php
/**  Exercício 8
* Dado um formulário POST com um campo de busca, que é submetido à página
* busca.php, implemente-a considerando a seguinte regra: se a palavra digitada
* constar em um array de palavras, a página deverá retornar as posições em que a
* palavra encontra-se. */

header('Content-Type: text/html; charset=utf-8');

if(!empty($_POST['busca'])){
    $getBusca = $_POST['busca'];
    $palavras = array(
        "Carro",
        "Moto",
        "Skate",
        "Bicicleta",
        "Patins",
        "Metro"
    );
    echo "A palavra-chave usada na busca foi: " . $getBusca . "<br><br>";

    foreach($palavras as $key => $value) {
        if((strtolower($value)) == strtolower($getBusca)) {
            $resultado_final[$value] = "Posição: " . $key;
        }
    }
    if(isset($resultado_final)){
        echo "<pre>";
        print_r($resultado_final);
        echo "<pre>";
    } else {
        echo "Você não digitou nenhuma palavra chave para buscar!";
    }
}
?>
<title>Exercício 8</title>
<form method="POST">
    Busca: <input name="busca" type="text"><br>
<input type="submit">
</form>

 

  • Obrigado! 1
  • +1 1

Share this post


Link to post
Share on other sites
1 hour ago, BrunoBit said:

 

Esse exercício ta pedindo pra você retornar a posição (index/key) do array e não a posição do novo array que você ta criando.

 

Contextualizando melhor:

Se no seu código atual eu pesquisar por "Metro", vai me retornar Metro na posição 0:

image.png.ab9c32f0f3d9e2388ab3dec05f3af810.png

 

Porém, o exercício pede que você retorne a posição do array onde está todas as palavras, que no caso do Metro seria 5:

image.png.27e4fb6e0f0d35423ced594ec386c945.png

 

O que você ta fazendo é apenas printar o novo array ($resultado_final) que você mesmo ta criando, aí acaba gerando novas posições diferentes, pq você ta construindo um novo array.

 

As únicas coisas que você tem que fazer é o seguinte:

alterar o foreach e mexer um pouco na lógica:

remover: 


array_column($resultado_final, 0);

remover:


array_values()

Esses dois caras aí só ta te atrapalhando.

Agora, aqui é a lógica que você precisa entender:


foreach($palavras as $key => $value) {
  if((strtolower($value)) == strtolower($getBusca)) {
  	$resultado_final[$value] = "Posição: " . $key;
  }
}

Antes você só tava usando


foreach($palavras as $resultado)

porém, com o foreach você consegue capturar a key (posição) de cada valor do array, fazendo isso:


foreach($palavras as $key => $value)
  • $palavras = o array que você quer percorrer
  • $key = a posição no array (0,1,2,3,4 ou posições com nomes)
  • $value = o valor (Carro, Moto, Skate etc)

resultado das alterações:

image.png.136ad953c663c8c77ef75c17193df6ee.png

 

Segue aí o código pra você estudar e adaptar:


<?php
/**  Exercício 8
* Dado um formulário POST com um campo de busca, que é submetido à página
* busca.php, implemente-a considerando a seguinte regra: se a palavra digitada
* constar em um array de palavras, a página deverá retornar as posições em que a
* palavra encontra-se. */

header('Content-Type: text/html; charset=utf-8');

if(!empty($_POST['busca'])){
    $getBusca = $_POST['busca'];
    $palavras = array(
        "Carro",
        "Moto",
        "Skate",
        "Bicicleta",
        "Patins",
        "Metro"
    );
    echo "A palavra-chave usada na busca foi: " . $getBusca . "<br><br>";

    foreach($palavras as $key => $value) {
        if((strtolower($value)) == strtolower($getBusca)) {
            $resultado_final[$value] = "Posição: " . $key;
        }
    }
    if(isset($resultado_final)){
        echo "<pre>";
        print_r($resultado_final);
        echo "<pre>";
    } else {
        echo "Você não digitou nenhuma palavra chave para buscar!";
    }
}
?>
<title>Exercício 8</title>
<form method="POST">
    Busca: <input name="busca" type="text"><br>
<input type="submit">
</form>

 

 

Nossa Bruno, você realmente me deu uma aula!

 

Que explicação boa de entender, eu tive a impressão de ter me perdido na lógica e tar tentando criar algo que era mais simples, por fim, eu tava certo, não era daquela forma...

 

Mas com sua explicação onde eu errei e como eu devia ter feito, ficou muito claro pra mim.

 

É a segunda fez que você teve essa paciência e consideração em me ajudar de forma tão excelente, o meu mais profundo e sincero obrigado.

 

O pessoal desse fórum é muito receptivo e excelente em ajudar, sem julgar erros bobos, essa qualidade de material humano me fez querer aprender mais e poder ajudar aos outros que por aqui passarem em um futuro, assim como eu estou precisando hoje.

  • Obrigado! 1

Share this post


Link to post
Share on other sites

Tamo junto Richard, a galera por aqui ta sempre um ajudando e aprendendo com o outro, essa é a verdadeira essência da comunidade. E seja bem vindo ao fórum.

  • Obrigado! 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By CyrusSouza
      Olá a todos.
       
      Estou com um problema na abertura de imagem quando a pasta está em outro servidor. Aparece uma ? no lugar da imagem, mesmo usando file_exists("Z:/img.jpg") que diz que reconheceu o arquivo. Este é o caminho para abrir:  echo '<img src="\\\\192.168.0.113\\images\\img.jpg" />'; .
      Foi mapeado a rede usando este comando no php : system("net use Z: \\\\192.168.0.113\\images images /user:images") funcionou tudo certo e  no iexplorer 9  a imagem aparece correto, mas nos outros navegadores (chrome, firefox, safari) não tem como, somente aparece "?' no lugar da imagem. Já inverti as barras (assim  \  ou assim /) não vai,  somente o iexplorer 9 aceita até invertendo
      exemplo  1: echo '<img src="\\\\192.168.0.113\\images\\img.jpg" />'; * No ie 9 tudo certo também sempre após mapear rede.
       
      exemplo 2:  Funciona somente no ie9 
       
            $teste1="Z:/img.jpg"; 
       
             if (file_exists($teste1)) {
                           echo "O arquivo existe : ".$teste1."<br>";
                           ?> 
                               <A href="rxnew.php"><img src="\\192.168.0.113\images\img.jpg" /></div>   <?php
                               }
                                     else {
                                            echo "O arquivo não existe";
                                          }
                   
       Agradeço se alguém me ajudar.
    • By mm_edilson
      Boa tarde, amigos. Poderiam me dar uma ajuda? Não estou conseguindo gravar no banco de dados. O site sempre retorna "não foi possível cadastrar esse usuário".
       
      A estrutura da minha tabela "usuários" é ID, nome, email, usuario, senha, permissao, status. O meu form é:
       
      <!DOCTYPE html> <html> <head> <title> Cadastro de Pessoas</title> <meta charset="utf-8" /> <style type="text/css"> * { margin: 0; padding: 0; vertical-align: baseline; } body { width: 100%; background-color: black; } .cabecalho{ width: center; height: 15vh; background: black; display: flex; flex-direction: row; justify-content: center; align-items: center; font-family: Arial; font-size: 15pt; font-weight: bold; color: white; } .corpo{width: 100vw; height: 100vh; background: #6C7A89; display: flex; flex-direction: row; justify-content: center; align-items: center; font-family: Arial; font-size: 15pt; font-weight: bold; } .labels{ display: block; left: 0; width: auto; font-family: Arial; font-size: 15pt; font-weight: bold; } .campos{ display: block; left: 0; width: auto; font-family: Arial; font-size: 15pt; font-weight: bold; } p { margin: 5px; font-family: Arial; font-size: 15pt; font-weight: bold; color: white; text-align: right; } </style> </head> <body> <div class="cabecalho"><center><H3>IGREJA BATISTA NOVA ALIANÇA - CADASTRO DE USUÁRIO<BR>Preencha todos os campos e clique em "Cadastrar"</H3></center></div> <div class="corpo"> <div class="labels"> <p>Nome completo:<br><br>Endereço de Email:<br><br>Nome de Usuário:<br><br>Senha:<br><br>Confirme a Senha:<br><br><br></p> </div> <div class="campos"> <p><form method="POST" action="cadastro.php"> <input type="text" size="41px" name="nome"> <br><br> <input type="text" size="41px" name="email"><br><br> <input type="text" size="21px" name="usuario"><br><br> <input type="password" size="21px" name="senha"><br><br> <input type="password" size="21px" name="confirma_senha"><br><br> <input type="reset" value="Limpar Formulário"> <input type="submit" value="Cadastrar"> </form></p> </div></div> </body> </html>  
      e o meu cadastro.php é
       
      <?php $nome = $_POST['nome']; $email = $_POST['email']; $usuario = $_POST['usuario']; $senha = MD5($_POST['senha']); $permissao = 1; $status = 1; $connect = mysqli_connect('localhost','opbbabac_dados_membros','*************'); $db = mysqli_select_db('opbbabac_dados_membros'); $query_select = "SELECT usuarios FROM opbbabac_dados_membros WHERE usuario = '$usuario'"; $select = mysqli_query($query_select,$connect); $array = mysqli_fetch_array($select); $logarray = $array['usuario']; if($usuario == "" || $usuario == null){ echo"<script language='javascript' type='text/javascript'>alert('O campo usuário deve ser preenchido');window.location.href='cadastro.html';</script>"; }else{ if($logarray == $usuario){ echo"<script language='javascript' type='text/javascript'>alert('Esse usuário já existe');window.location.href='cadastro.html';</script>"; die(); }else{ $query = "INSERT INTO usuarios (nome,email,usuario,senha,permissao,status) VALUES ('$nome','$email','$usuario','$senha','$permissao','$status')"; $insert = mysqli_query($query,$connect); if($insert){ echo"<script language='javascript' type='text/javascript'>alert('Usuário cadastrado com sucesso!');window.location.href='login.html'</script>"; }else{ echo"<script language='javascript' type='text/javascript'>alert('Não foi possível cadastrar esse usuário');window.location.href='cadastro.html'</script>"; } } } ?>  
      Alguém consegue visualizar onde está o erro? Obrigado, e abraços a todos.
       
       
    • By barrigademel
      <head> <!-- Favicon --> <link href='http://www.iconj.com/ico/e/9/e993nwoswx.ico' rel='shortcut icon' type='image/x-icon'/> Não importa como eu adicione ou mude o campo favicon, ele simplesmente não sobe. já tentei re-fazer umas 15x, e mandar as 15 pro head todas sobem sem erro, mas não muda o favicon
    • By rogerblower
      o Google me avisou de dois erros no meu site;
       
      Clickable elements too close together
      Text too small to read
       
      Na verificação constatei que o erro é;
       
      Fatal error:  Call to undefined function db_connect() in
       
      O php não me mostra esse erro mesmo habilitando os erros no php ini os arquivos de conexão que estou usando são;
       
      ini.php
      <?php define('DB_HOST', 'localhost'); define('DB_USER', 'user'); define('DB_PASS', 'senha'); define('DB_NAME', 'banco'); ini_set('display_errors', true); error_reporting(E_ALL); require_once 'functions.php'; functions.php
       
      <?php function db_connect() { $pdo = new PDO('mysql:host=' . DB_HOST . ';dbname=' . DB_NAME . ';charset=utf8', DB_USER, DB_PASS); return $pdo; } function make_hash($str) { return sha1(md5($str)); } function isLoggedIn() { if (!isset($_SESSION['logged_in']) || $_SESSION['logged_in']!== true) { return false; } return true; } O erro esta nesta linha
      <?php $pdo = db_connect(); $sql = $pdo->prepare("SELECT * FROM servicos "); $sql->execute(); while($row=$sql->fetch(PDO::FETCH_ASSOC)){ echo'<a href="servicos.php?id='.$row['id'].'">'.$row['servico'].'</a>'; } Incluo a conexão com banco na header.php e nas demais páginas não aparece o erro
      realmente não sei o que pode estar acontecendo.
      se alguém pode me ajudar?
       
      Obrigado
       
    • By violin101
      Caros amigos, saudações...
       
      Por favor, me perdoa em recorrer ao auxílio dos amigos.
       
      Tenho os seguintes CAMPOS no Mysql:
      ===[ id_movimento
      ===[ dta_movimento
      ===[ num_movimento
      ===[ status_movimento
       
      Minha dúvida é o seguinte:
      ==> como faço para no campo num_movimento após o insert no banco de dados, o sistema possa garvar da seguinte forma:
      ========[ pega o ID do movimento = 1
      ========[ pega uma String como:  E = entrada | S = saída | D = devolução
      ========[ grava no campo num_movimento desta forma: E-00001
       
      Na MODEL capturo o último ID desta forma:
      //Pega o Último ID public function lastID(){ return $this->db->insert_id(); }  
      Na CONTROLLER trago a informação do último ID desta forma:
      $ultimoID = $this->movimentos_model->lastID();  
      Grato a todos.
       
      Cesar
×

Important Information

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