Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lucas Rodrigues_158061

Criar uma coisa 'simples'

Recommended Posts

Por fim, estou aqui! :D

 

Eu cansei de ficar usando somente HTML e CSS, e partir para uma 'nova aventura' (kkk). Agora a questão é PHP e MySLQ... Pelo que sei eles são ate um pouco similar.

 

O PROBLEMA:

 

Queria criar um siteminha para que possam modificar conteudo da pagina! Tipo:

 

index.php

 

<h1> EXEMPLO </h1>

<p> conteudo </p>

 

Então gostaria de criar um jeito de ser +/- assim:

 

index.php:

 

<h1> EXEMPLO </h1>

< ALGUM CODIGO QUE LEIA ALGO DO BANCO DE DADOS >

 

e então na pagina

editar.php:

 

<H1> ALTERAR PAGINA INDEX.PHP </h1>

< CODIGO PARA MODIFICAR O CONTEUDO DO BANCO DE DADOS >

 

Ideia, criar muitas linhas no banco de dados (não sei se é esse o nome), e criar para cada pagina ir alterando....

Exemplo. A parada é tipo 'agenda', entao seria assim:

 

<H1> MATEMATICA </H1>

< CODIGO PARA LER O QUE ESTÁ NA DB 'agenda' na linha 'matematica-segunda'

<A HREF="ALTERAR-MAT-SEG.PHP"> ALTERAR </A>

 

Na pagina "ALTERAR-MAT-SEG.PHP':

 

< CODIGO PAR ALTERAR A LINHA 'matematica-segunda' >

 

 

 

RESUMO

 

Só quero saber como faz a leitura de algo que está na DB, e como faz para alterar o que está lá! :D

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem,

Confesso que só me animei com o resumo.

Para ler o que está no DB, você deverá fazer uma consulta mysql.

(Depois que escrevi tudo, percebi que virou uma mini aula :P)

Antes de tdo, é preciso ter feito a conexão.

<?
$host = "localhost";
$user = "user";
$senha = "senha";
$dbname = "DB";
$conexao = mysql_connect($host, $user, $senha) or die("Usuario e senhas nao conferem");
mysql_select_db($dbname); ?>

 

Feito isso, você está pronto para fazer consultas.

Como exemplo, digo que tenho uma tabela no meu DB com o nome "frases", e nela, tenho "id, frase, autor".

Quero puxar uma das frases (a última registrada)

<?php 
//Faz a consulta:
$sql = mysql_query("SELECT * FROM frases");
$linhas = mysql_fetch_array($sql);

//Agora pega os dados do banco
$frase = $linhas['frase'];
$autor = $linhas['autor'];
?>
<p>Agora, Vou imprimir a última frase encontrada no banco:</p>
<p><?php echo $frase; ?></p>
<i style="font-size: 10px"><?php echo $autor; ?></i>

 

Se eu quiser imprimir todas as frases, uso um loop com while.

<?php 
//Faz a consulta:
$sql = mysql_query("SELECT * FROM frases");
while($linhas = mysql_fetch_array($sql)) {

//Agora pega os dados do banco
$frase = $linhas['frase'];
$autor = $linhas['autor'];
?>
<p>Agora, Vou imprimir todas as frases encontradas no banco:</p>
<p><?php echo $frase; ?></p>
<i style="font-size: 10px"><?php echo $autor; ?></i><?php } ?>

 

Agora, quero pegar frases somente de um autor especificado.

Para isso, uso cláusula WHERE na consulta.

<?php 
//Faz a consulta:
$sql = mysql_query("SELECT * FROM frases WHERE autor = 'João'");
while($linhas = mysql_fetch_array($sql)) {

//Agora pega os dados do banco
$frase = $linhas['frase'];
$autor = $linhas['autor'];
?>
<p>Agora, Vou imprimir todas as frases encontradas no banco:</p>
<p><?php echo $frase; ?></p>
<i style="font-size: 10px"><?php echo $autor; ?></i><?php } ?>

Assim, todas as frases de João irão ser impressas na página.

 

*******

Agora, vou inserir uma frase que recebi por meio de um formulario ($_POST):

<?php
//Recebe os dados colocados dentro de um input no formulário:
$frase = $_POST['frase']; //O nome do INPUT era "frase"
$autor = $_POST['autor']; //O nome do INPUT era "autor"

$sql = mysql_query("INSERT INTO frases (frase,autor) VALUES('$frase','$autor');
?>

*******

Agora, quero editar uma frase que recebi por meio de um formulario ($_POST):

<?php
//Recebe os dados colocados dentro de um input no formulário:
$id_frase = $_POST['id']; //Id da frase, para nao confundir a consulta. (coloquei o id por meio de input hidden)
$frase = $_POST['frase']; //O nome do INPUT era "frase"
$autor = $_POST['autor']; //O nome do INPUT era "autor"

$sql = mysql_query("UPDATE frases set frase='$frase', autor = '$autor' WHERE id = '$id_frase'");
?>

 

Espero que tenha ajudado :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso é feito na página anterior do formulário,

Vamos supor:

Tenho uma página chamada frase.php

Nela, tem um formulario.

<form action="envia_frase.php" name="envia_frase">
<p>Frase:<input type="text" name="frase"></input></p>
<p>Autor:<input type="text" name="autor"></input></p>
<input type="submit" name="envia" Value="Cadastra Frase"></input>
</form>

Você pega o exemplo que te dei para enviar ao banco, e cria um arquivo com ele com o nome envia_frase.php

Só testar agora.

 

Sobre o id, na hora de criar, coloca id... DataType INTEGER.

Na hora de inserir, nao precisa de colocar nada. Ele vai sozinho

Compartilhar este post


Link para o post
Compartilhar em outros sites

To começando a sacar o PHP :D

 

Mais tenho uma duvida... eu posso por em um arquivo exemplo "enviar_frase.php"

eu posso por:

<?php

//Recebe os dados colocados dentro de um input no formulário:

$1 = $_POST['1']; //O nome do INPUT era "frase"

$2 = $_POST['2']; //O nome do INPUT era "autor"

$2 = $_POST['3']; //O nome do INPUT era "frase"

$3 = $_POST['4']; //O nome do INPUT era "autor"

$4 = $_POST['5']; //O nome do INPUT era "frase"

$5 = $_POST['6']; //O nome do INPUT era "autor"

 

$sql = mysql_query("INSERT INTO modificar (1,2,3,4,5,6) VALUES('$1','$1','$3','$4','$5','$6');

?>

 

* onde os numeros sao os nomes *

 

e no formulario posso criar 2 pagina com

 

enviar 1,2,3:

<form action="envia_frase.php" name="envia_frase">

<p>Frase:<input type="text" name="1"></input></p>

<p>Autor:<input type="text" name="2"></input></p>

<p>Autor:<input type="text" name="3"></input></p>

<input type="submit" name="envia" Value="Cadastra Frase"></input>

</form>

 

enviar 4,5,6:

<form action="envia_frase.php" name="envia_frase">

<p>Frase:<input type="text" name="4"></input></p>

<p>Autor:<input type="text" name="5"></input></p>

<p>Autor:<input type="text" name="6"></input></p>

<input type="submit" name="envia" Value="Cadastra Frase"></input>

</form>

 

de modo onde 2 paginas usem 1 msm arquivo?!

O name="..." é o nome da parada no php?

Compartilhar este post


Link para o post
Compartilhar em outros sites

de modo onde 2 paginas usem 1 msm arquivo?!

Pode lucas. Mas na página "enviar_frase.php" você terá q identificar qual página está chamando ela. você pode fazer isso passando algum parâmetro por GET mesmo.

 

O name="..." é o nome da parada no php?

O name é o identificador do componente. Por isso use identificadores sugestivos, e não apenas números.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo ele da um erro!

 

Eu fiz:

o Config.php como ta lá (mudei la os campos com o meu servidor e talz...)

 

enviar_segunda.php:

 

<?php
$materia1 = $_POST['Mat_seg']; 
$materia2 = $_POST['Cie_seg']; 
$materia2 = $_POST['Port_seg']; 

$sql = mysql_query("INSERT INTO modificar (Mat_seg,Cie_seg,Cie_seg) VALUES('$materia1','$materia2','$materia3'");
?>

 

DB:

 

Nome da DB é lucrod891_ink

Com table: modificar

Com os item la, linhas, num sei o nome. Mais dentro da table:

 

Mat_seg

Cie_seg

Port_seg

 

modificar_segunda.php:

<form action="envia_segunda.php" name="envia_segunda">
<p>Matematica:</p>
<p>
 <input type="text" width="400" height="150" name="materia1">
 </input>
</p>
<p>Ciencias:</p>
<p>
 <input type="text" width="400" height="150" name="materia2">
 </input>
</p>
<p>Portugues:</p>
<p>
 <input type="text" width="400" height="150" name="materia3">
 </input>
</p>
<input type="submit" name="envia" Value="MODIFICAR"></input>
</form>

 

Todos estao na mesma pasta!! e da um erro q nao foi encontrado :\

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aparecia o erro padrão do mozzila como se não consegui-se conectar! :\

Agora esta uma pagina em branco, para onde é redirecionado depois de preencher PORÉM não muda nada, tipo, o codigo para ver, não ver o que eu modifiquei :(

 

Não sei aonde ta o problema :\

Compartilhar este post


Link para o post
Compartilhar em outros sites

1° você tem q dizer qual o método usado no envio do seu formulário. Ficaria assim:

 

<form action="envia_segunda.php" method="post" name="envia_segunda">

 

2° No $_POST você tem q passar o nome do campo que você quer capturar. No seu caso ficaria:

 

<?php
$materia1 = $_POST['materia1']; 
$materia2 = $_POST['materia2']; 
$materia2 = $_POST['materia3']; 

$sql = mysql_query("INSERT INTO modificar (Mat_seg,Cie_seg,Cie_seg) VALUES('$materia1','$materia2','$materia3'");
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

amigo ñ é bem assim que se começa em uma nova linguagem.. você estudou, pesquisou na internete, buscou artigos cursos? ou so ta esperando o conhecimento cair do ceu?

 

ñ me entenda mal, mas ñ vai obter muitos resultados se sair programando na doida.. de fato suas duvidas são bastante simple e faceis de se encontrar em forum e apostilas, e vai ser melhor pro seu crecimento na area!!

 

procura matrial pra iniciante mesmo tipo hello word, e vai avançando, por a carroça na frente dos bois ñ ajuda muito! conselho de amigo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei como pega o SLQ :\

Mais ele é todo "varchar(1024) latin1_swedish_ci"

 

Enviar_segunda.php

<?php
$materia1 = $_POST['materia1']; 
$materia2 = $_POST['materia2']; 
$materia2 = $_POST['materia3']; 

$sql = mysql_query("INSERT INTO modificar (Mat_seg,Cie_seg,Cie_seg) VALUES('$materia1','$materia2','$materia3'");
?>

 

Modificar_segunda.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

<form action="enviar_segunda.php" method="post" name="enviar_segunda">
<p>Matematica:</p>
<p>
 <input type="text" width="400" height="150" name="materia1">
 </input>
</p>
<p>Ciencias:</p>
<p>
 <input type="text" width="400" height="150" name="materia2">
 </input>
</p>
<p>Portugues:</p>
<p>
 <input type="text" width="400" height="150" name="materia3">
 </input>
</p>
<input type="submit" name="envia" Value="MODIFICAR"></input>
</form>

</body>
</html>

 

Config.php:

<?
$host = "lmysql12.freehostia.com";
$user = "lucrod891_ink";
$senha = " a senha é aki eu sei :D";
$dbname = "lucrod891_ink"; // e o msm nome do user 
$conexao = mysql_connect($host, $user, $senha) or die("Usuario e senhas nao conferem");
mysql_select_db($dbname); ?>

 

A DB:

 

id int(6) Não auto_increment Primario

Mat_seg varchar(1024) latin1_swedish_ci

ou outros sao iguais :\

 

To querendo aprender na marra mesmos, eu aprendi, em tese, CSS, HTML e um pouco de JAVa assim. Só que acho que com o PHP não vai ser igual. Acho que vou ter q baixar uns livro, comprar alguns... Mais queria apreder o basico pra saber se quero ou nao 'continuar' com PHP :\

 

Não sei como pega o SLQ :\

Mais ele é todo "varchar(1024) latin1_swedish_ci"

 

Enviar_segunda.php

<?php
$materia1 = $_POST['Mat_seg']; 
$materia2 = $_POST['Cie_seg']; 
$materia2 = $_POST['Port_seg']; 

$sql = mysql_query("INSERT INTO modificar (Mat_seg,Cie_seg,Port_seg) VALUES('$materia1','$materia2','$materia3'");
?>

 

Modificar_segunda.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>

<form action="enviar_segunda.php" method="post" name="enviar_segunda">
<p>Matematica:</p>
<p>
 <input type="text" width="400" height="150" name="materia1">
 </input>
</p>
<p>Ciencias:</p>
<p>
 <input type="text" width="400" height="150" name="materia2">
 </input>
</p>
<p>Portugues:</p>
<p>
 <input type="text" width="400" height="150" name="materia3">
 </input>
</p>
<input type="submit" name="envia" Value="MODIFICAR"></input>
</form>

</body>
</html>

 

Config.php:

<?
$host = "mysql12.freehostia.com";
$user = "lucrod891_ink";
$senha = " a senha é aki eu sei :D";
$dbname = "lucrod891_ink"; // e o msm nome do user 
$conexao = mysql_connect($host, $user, $senha) or die("Usuario e senhas nao conferem");
mysql_select_db($dbname); ?>

 

A DB:

 

id int(6) Não auto_increment Primario

Mat_seg varchar(1024) latin1_swedish_ci

ou outros sao iguais :\

 

To querendo aprender na marra mesmos, eu aprendi, em tese, CSS, HTML e um pouco de JAVa assim. Só que acho que com o PHP não vai ser igual. Acho que vou ter q baixar uns livro, comprar alguns... Mais queria apreder o basico pra saber se quero ou nao 'continuar' com PHP :\

Compartilhar este post


Link para o post
Compartilhar em outros sites

coloque depois do código $sql no envia_segunda.php:

if($sql) {
echo "Os dados foram enviados corretamente"; }
else {
echo mysql_error();
}

Poste aqui o que é exibido como resultado depois de enviar o formulário.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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