Jump to content


Photo

Criando Um Sistema De Fotos


  • Faça o login para participar
45 replies to this topic

#16 thalesalan

thalesalan
  • Visitantes

Posted 26/04/2004, 14:32

Ai pessoal vamo aprender fazer um sistema de fotos???


_________________________________________________________
1° Passo: Criaremos uma tabela no mysql...

abra http://localhost/mysql/ para entrar no phpmyadmin...

Criem um banco de dados

tabela:

CREATE TABLE fotos (id INT(5) AUTO_INCREMENT,
foto_grande CHAR(50) NOT NULL,
foto_pequena CHAR(50) NOT NULL,
foto_alt CHAR(30) NOT NULL,
PRIMARY KEY( id ))


explicando:
CREATE TABLE nome() <------- funcao que cria uma tabela.
id INT() AUTO_INCREMENT <-------- cria um campo "id" para numeros e auto-incrementa novas numeros.
foto_grande CHAR() NOT NULL <------ cria um campo "foto_grande" para qualquer coisa e naum nulo.
PRIMARY KEY( id ) <-------- Indica qua id eh o primeiro campo da tabela.

Numeros saum o numero maximo de caracteres para inserir nessa tabela.


___________________________________________________________
2° passo: criar um arquivo de dados....

config.php

<?
$local = "localhost"; //Local do mysql...
$login = "root"; //Login no computador, naum use este em hosts...
$senha = ""; //se for em branco deixe assim mesmo...
$banco_de_dados = "nome_do_seu_banco_de_dados"; //o banco de dados que voce criou...
$local_das_imagens = "local_das_imagens_no_servidor"; //local pra enviar as imagens...
?>

criamos variaveis de autenticacao dos dados do mysql que voce tem.

___________________________________________________________
3° passo: mostrando...

mostra.php

<?
include "config.php"; //Incluindo os dados criados...
mysql_connect($local, $login, $senha); //Conectando ao mySQL...
$sql = mysql_query("select * from fotos"); //Selecionando a tabela...
if(!empty($id)){ //se naum existir no endereco da pagina id ex: mostra.php?id=1 se naum tiver isso.
echo "<table>\n"; //comeca uma tabela
while($row = mysql_fetch_array($sql)){ //abre o mysql_fetch_array() para mostrar os resultados.
echo "<tr>\n
<td><a href='".$PHP_SELF."?id=$row[id]'><img src='$row[foto_pequena]' border='0' alt='$row[alt]' width='150' height='150'></a></td>\n
</tr>\n"; //cria uma tabela com um link para mostra a imagem grande mostra no link a imagem pequena e o alt definido no mysql
} //fecha o mysql_fetch_array()
echo "</table>"; //termina a tabela.
}else{ //se houver o campo ID to endereco
while($row = mysql_fetch_array($sql)){ //abre o mysql_fetch_array() para mostrar os resultados.
echo "
<img src='$row[foto_grande]' border='0' alt='$row[alt]'></td>\n
"; //mostra a imagem grande.
}//finaliza o mysql_fetch_array()
} //finaliza a verificacao do id no endereco
?>

jah expliquei no codigo...
_________________________________________________________

3° passo inserir:
Inserir.php

<?
$pasta = "PASTA_DAS_IMGS";
include "config.php"; //Insere o config.php para pegarmos os dados...
mysql_connect($local, $login, $senha); //conecta ao mySQL...
mysql_select_db($banco_de_dados); //Seleciona o DB(DB = Data Base = Banco de Dados)...
if($id==""){ //se naum houver ID na url...
?>
Inserir
<table>
<form action="?id=add" method="post" enctype="multipart/form-data">
<tr>
  <td>foto grande:</td>
  <td><input type="file" name="g"></td>
</tr>
<tr>
  <td>foto pequena:</td>
  <td><input type="file" name="p"></td>
</tr>
<tr>
  <td>Alt para a foto:</td>
  <td><input type="text" name="alt"></td>
</tr>
<tr>
  <td colspan="2"><input type="submit" value="OK!"></td>
</tr>
</form>
</table>
<? }elseif($id==add){ //se houver ID na url...
if(@copy($g, $localdasimagens."".$g_name)){   //copia o arquivo da foto_grande
echo "$g_name foi copiado com sucesso!";  #
}else{                                    #Exibe as mensagens...
echo "erro ao copiar $g_name.";           #
}
echo "<br>";
if(@copy($p, $localdasimagens."".$p_name)){ //copia o arquivo foto_pequena
echo "$p_name foi copiado com sucesso!";    #
}else{                                      #Exibe as mensagens...
echo "erro ao copiar $p_name.";             #
}
echo "<br>";
mysql_query("insert into fotos (foto_grande, foto_pequena, foto_alt) values ('$pasta."".$g_name','$pasta."".$p_name','$alt')"); //insere os dados no mySQL
echo "Dados inseridos com sucesso!";
}
?>

_________________________________________________________

4°passo: deletar

deletar.php:

<?
include "config.php"; //Insere o config.php para pegarmos os dados...
mysql_connect($local, $login, $senha); //conecta ao mySQL...
mysql_select_db($banco_de_dados); //Seleciona o DB(DB = Data Base = Banco de Dados)...
$sql = mysql_query("select * from fotos"); //seleciona a tabela
if(empty($id)){  //se naum houver ID na url...
while($row = mysql_fetch_array($sql)){ //mostra os resultados...
echo "<tr>
<td><a href='deleta.php?id=$row[id]'><img src='$row[foto_pequena]' alt='Deletar: $row[foto_alt]'></a></td>
</tr>";
} //cria os links para deletar...
}else{    //se hover ID na url...
mysql_query("DELETE FROM fotos WHERE id = '$id'"); //deleta o registro
echo "essa foto foi deletada com sucesso!";
}  //fim
?>



Valeu

http://localhost/mysql/Aí eu sinto dzer mas esse link nao funcionou comigo desse jeito vc poderia colocar outro link de nesse mesmo site?

Você tem que ter o apache, php e mysql instalados e configurados em seu computador :P

http://www.install.rg3.net :D

#17 Kakarotto

Kakarotto

    GoKu - GT

  • Usuários
  • 269 posts
  • Sexo:Masculino
  • Localidade:Paulista-PE
  • Interesses:PHP, MySQL, Java, JavaScvript.

Posted 21/05/2004, 01:54

No mostra.php dá este erro: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in *****\fotos\mostra.php on line 14

No inserir.php dá este: Parse error: parse error, unexpected '"' in ******\fotos\inserir.php on line 41

Deu aqui tambem! e tenho o EasyPHP instalado e tudo funcionando. :wacko:

#18 Put

Put

    12 Horas

  • Usuários
  • 154 posts
  • Sexo:Não informado
  • Localidade:Curitiba - PR
  • Interesses:Webdesign, acessibilidade e usabilidade de websites.

Posted 12/10/2004, 01:07

entranho...

pq será que as minhas fotos estão sendo enviadas para a mesma pasta do script e nao pra pasta especificada?

Edição feita por: Put, 12/10/2004, 02:42.

project.47 - Portfolio & Personal Website: http://project47.viscountbox.com

#19 pgnall

pgnall

    Enable

  • Usuários
  • 383 posts
  • Sexo:Masculino
  • Localidade:http://eduardo.sganzerla.net

Posted 15/10/2004, 15:35

No mostra.php dá este erro: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in *****\fotos\mostra.php on line 14

No inserir.php dá este: Parse error: parse error, unexpected '"' in ******\fotos\inserir.php on line 41

Deu aqui tambem! e tenho o EasyPHP instalado e tudo funcionando. :wacko:

desculpa cara, mas isso ja foi ignorancia tb né?! precisa no minimo edita o script cara, a parte de tutoriais não é script pronto, é pra aprende, pelo menos podia le o script :wacko:
Eduardo Sganzerla
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀


www.Eu Sei Escrever.com.br - Adote esta campanha!

#20 pgnall

pgnall

    Enable

  • Usuários
  • 383 posts
  • Sexo:Masculino
  • Localidade:http://eduardo.sganzerla.net

Posted 15/10/2004, 15:37

entranho...

pq será que as minhas fotos estão sendo enviadas para a mesma pasta do script e nao pra pasta especificada?

config.php

<?
$local = "localhost"; //Local do mysql...
$login = "root"; //Login no computador, naum use este em hosts...
$senha = ""; //se for em branco deixe assim mesmo...
$banco_de_dados = "nome_do_seu_banco_de_dados"; //o banco de dados que voce criou...
$local_das_imagens = "local_das_imagens_no_servidor"; //local pra enviar as imagens...
?>


cara, provavelmente ai tu coloca a mesma pasta dos arquivos...

flw
Eduardo Sganzerla
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀


www.Eu Sei Escrever.com.br - Adote esta campanha!

#21 jura

jura

    Turista

  • Usuários
  • 55 posts
  • Sexo:Não informado

Posted 26/10/2004, 15:49

Como eu faria para fazer apenas o upload da imagem grande..e que ele gere a imagem pequena (thumb) e grave o nome do thumb no banco..Eu sei que eu tenho que usar GD..Alguém pode me dar uma juda a adaptar esse código...

Obrigado

Jura

#22 Spider-man

Spider-man

    Doutor

  • Usuários
  • 987 posts
  • Sexo:Não informado

Posted 20/04/2005, 20:40

aki nao deu certo esse esquema de fotos, qdo eu acesso o inserir.php ele nao aparece nada

#23 gregorytg

gregorytg

    Mestre

  • Usuários
  • 632 posts
  • Sexo:Não informado

Posted 22/04/2005, 22:35

Show de tutorial, só achei uma pequena falha.
Porque na hora de inserir, não fazer também para criar uma nova pasta?

Assim como está, não da para enviar fotos com o mesmo nome, ae vira uma "melecada só"
;) fica a dica
"Porque o Senhor será a tua confiança, e guardará os teus pés de serem presos". \o/

#24 Spider-man

Spider-man

    Doutor

  • Usuários
  • 987 posts
  • Sexo:Não informado

Posted 22/04/2005, 22:38

gregorytg, aí o script rodou?

#25 gregorytg

gregorytg

    Mestre

  • Usuários
  • 632 posts
  • Sexo:Não informado

Posted 22/04/2005, 22:52

Sim, qual o problema que ocorreu no seu?
"Porque o Senhor será a tua confiança, e guardará os teus pés de serem presos". \o/

#26 Spider-man

Spider-man

    Doutor

  • Usuários
  • 987 posts
  • Sexo:Não informado

Posted 22/04/2005, 22:55

qdo eu entro no arquivo inserir.php ele nao aparece nada

#27 gregorytg

gregorytg

    Mestre

  • Usuários
  • 632 posts
  • Sexo:Não informado

Posted 22/04/2005, 22:55

:wacko: Estranho, poste como esta ele
"Porque o Senhor será a tua confiança, e guardará os teus pés de serem presos". \o/

#28 Spider-man

Spider-man

    Doutor

  • Usuários
  • 987 posts
  • Sexo:Não informado

Posted 22/04/2005, 23:03

eu copiei e colei igualzinho aki, tem q dar chmod?

#29 gregorytg

gregorytg

    Mestre

  • Usuários
  • 632 posts
  • Sexo:Não informado

Posted 22/04/2005, 23:09

Você alterou as variaveis? do config.php e tals?
"Porque o Senhor será a tua confiança, e guardará os teus pés de serem presos". \o/

#30 Spider-man

Spider-man

    Doutor

  • Usuários
  • 987 posts
  • Sexo:Não informado

Posted 22/04/2005, 23:10

alterei sim




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq