austinmrs Posted February 27, 2013 at 09:18 AM Report #497199 Posted February 27, 2013 at 09:18 AM Boa tarde, Estou no 12º de Multimédia, e tenho de realizar a minha PAP. Bem, o que pensei fazer, e foi aceite, foi um website, em php+mysql, sobre o "turismo" da minha terra, Murtosa. Ou seja, a Murtosa tem 4 Freguesias, e tem bastantes Restaurantes, Cafés, Pensões, Edificios Municipais, etc. Então a ideia era criar um site, em que haveria uma barra de pesquisa, e o utilizador poderia pesquisar por sitios, esta barra ao escrever, iria aparecer um menu drop down(con recurso a ajax), em que eu ao escrever por exemplo Em, em baixo apareceriam já os pontos com aqueles caracteres na base de dados (exemplo: Emigrante). Depois, além desta pesquisa, queria que esta pesquisar fosse filtrada por Freguesias, e por Tipos. Pensei em criar um menu drop down ao passar o rato por cima do menu restaurantes, cafés, etc, em que por exemplo ao passar o rato por cima de restaurante, apareciam as freguesias, para clicar e pesquisar so restaurantes numa freguesia. até fácil, só select * from, e select * from *** where name like '%"feefwgf"%'... A base de dados será esta: http://dl.dropbox.com/u/46096897/Sem Título.jpg Também vou criar uma tabela para usuários, para quem está logado poder adicionar novos sitios. Agora, eu preciso de ajuda em criar a base de dados, não sei bem como fazer com o campo de imagem.. Só quero ter uma imagem por sitio, o melhor será guardar a imagem no base de dados, certo? Ao criar o form para introduzir um novo sitio, como faço para a imagem que for feito o upload seja renomeada para o mesmo nome que foi dado para o sitio? Exemplo: Sitio: Café Porto Imagem: 123.jpg imagem será renomeada para café porto.jpeg. Porque depois, ao pesquisar por este café, como é que será possivel, por exemplo, aparecer o nome do café, e uma miniatura da imagem? E só depois ao clicar no café, é que abre o café com os contactos todos, e a morada? Algumas ideias/ajudas? Cumps.
NunoDinis Posted February 27, 2013 at 09:31 AM Report #497203 Posted February 27, 2013 at 09:31 AM Agora, eu preciso de ajuda em criar a base de dados, não sei bem como fazer com o campo de imagem.. Só quero ter uma imagem por sitio, o melhor será guardar a imagem no base de dados, certo? Eu guardo na BD o caminho, podendo sequer nem ter que ter mais um campo. Posso atribuir o nome da imagem à chave primária da tabela. Ao criar o form para introduzir um novo sitio, como faço para a imagem que for feito o upload seja renomeada para o mesmo nome que foi dado para o sitio? Fazes assim: if ($_FILES) { if($_FILES['image'] && $_FILES['image']['size'] > 0){ $ori_name = $_FILES['image']['name']; $tmp_name = $_FILES['image']['tmp_name']; $src = imagecreatefromjpeg($tmp_name); list($width,$height)=getimagesize($tmp_name); $newwidth=100; $newheight=($height/$width)*100; $tmp=imagecreatetruecolor($newwidth,$newheight); //vai buscar a extensao da imagem $extensao = explode(".", $ori_name); //echo $extensao[0]; //resto da imagem, da lugar ao id //echo $extensao[1]; // extensao imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height); $filename = "images/".$_POST['id'].'.'.$extensao[1]; //concatena id com a extensao imagejpeg($tmp,$filename,100); $picture = "images/".$_POST['id'].'.'.$extensao[1]; //concatena id com a extensao imagedestroy($src); imagedestroy($tmp); } } Nota que estou a redimensionar a imagem, se não quiseres retiras o código que se encarga dessa operação. imagem será renomeada para café porto.jpeg. Porque depois, ao pesquisar por este café, como é que será possivel, por exemplo, aparecer o nome do café, e uma miniatura da imagem? E só depois ao clicar no café, é que abre o café com os contactos todos, e a morada? Que tipo de pesquisa ? Em tabela ou que auto-completa à medida que vais digitando ? Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
dmaciel Posted February 27, 2013 at 09:47 AM Report #497206 Posted February 27, 2013 at 09:47 AM Olá Amigo, Eu sou de Ovar, caso precises de ajuda avisa 😉 Em relação as tuas questões tu na base de dados só vais guardar o URL (o link) de onde está a imagem, isto é, no formulário PHP vais enviar a tua imagem para uma pasta no servidor e enviar essa localização para a Base de Dados. Em relação ao renomear já te foi explicado, quando tiveres a enviar a imagem para o servidor podes alterar o nome e muito mais. 🙂 Bom trabalho!!!
austinmrs Posted February 27, 2013 at 09:59 AM Author Report #497208 Posted February 27, 2013 at 09:59 AM Obrigado desdejá pela ajuda! Então, o melhor será começar por criar as tabelas no phpmyadmin.. Eu criei o campo imagem como mediumbloob, então vou apagar tudo, e criar de novo. Assim sendo, a bd só irá contar mesmo o nome do directório. Crio um campo para imagem ou não? Ou seja, a imagem ao fazer upload é renomeada para o nome do ponto, e irá ser posta em /images , para depois ao pesquisar por aquele ponto, aparecer a imagem. O que queria era que aparecesse só mesmo a imagem em pequeno, e depois ampliava . Vi este script que parece fazer o que quero: http://lokeshdhakar.com/projects/lightbox2/ Então agora ajuda para criar as tabelas. Será algo assim: Freguesias id_freguesia nome_freguesia Pontos id_ponto nome_ponto contacto horário morada id_freguesia id_tipo imagem coordenadas tipo id_tipo nome_tipo Cumps
NunoDinis Posted February 27, 2013 at 10:03 AM Report #497209 Posted February 27, 2013 at 10:03 AM Eu criei o campo imagem como mediumbloob, então vou apagar tudo, e criar de novo. Assim sendo, a bd só irá contar mesmo o nome do directório. Crio um campo para imagem ou não? Ou seja, a imagem ao fazer upload é renomeada para o nome do ponto, e irá ser posta em /images , para depois ao pesquisar por aquele ponto, aparecer a imagem. Se associares o nome da imagem a um id (que seja chave-primária) não é necessário um campo imagem. Para já as tabelas parecem-me bem. Tens as relações bem feitas ? Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
austinmrs Posted February 27, 2013 at 10:28 AM Author Report #497217 Posted February 27, 2013 at 10:28 AM (edited) Se associares o nome da imagem a um id (que seja chave-primária) não é necessário um campo imagem. Para já as tabelas parecem-me bem. Tens as relações bem feitas ? mas eu acho que vou criar o campo imagem, para me organizar melhor. vou criar as tabelas todas de novo, só uma coisa, o campo imagem, fica em varchar? e outra coisa, estou com problemas em criar as relacoes no php my admin .. nao consigo mudar a storage engine para innodb , não me aparece essa opção.. Também vou criar uma tabela para usuarios usuarios id_usuario nome_usuario senha_usuario esta tabela terá apenas um usuário, pois não faz sentido uma pessoa se poder registar, servirá apenas para o admin fazer login para adicionar novos pontos. ou seja a parte com o form para introduzir um novo sitio, irá ser só visivel para quem tiver logado. Edited February 27, 2013 at 10:31 AM by austinmrs
NunoDinis Posted February 27, 2013 at 10:39 AM Report #497219 Posted February 27, 2013 at 10:39 AM Está bem, isso já é contigo 🙂 Sim, pode ficar. Estás a ir às operações dentro de uma tabela ? Se sim, deveria aparecer.. e já agora, porque queres mudar ? Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
austinmrs Posted February 27, 2013 at 10:40 AM Author Report #497220 Posted February 27, 2013 at 10:40 AM Está bem, isso já é contigo 🙂 Sim, pode ficar. Estás a ir às operações dentro de uma tabela ? Se sim, deveria aparecer.. e já agora, porque queres mudar ? eu usava o mysql na linha de comandos, ou seja para criar relações usava o comando references , e agora aqui estou com dificuldados em criar as relações entre as tabelas.
NunoDinis Posted February 27, 2013 at 10:43 AM Report #497221 Posted February 27, 2013 at 10:43 AM Podes criar as relações no Designer. É fácil e intuitivo. Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
austinmrs Posted February 27, 2013 at 10:47 AM Author Report #497223 Posted February 27, 2013 at 10:47 AM http://dl.dropbox.com/u/46096897/werr.jpg neste momento está assim, está tudo correcto, penso eu... como assim, no designer? eu estou a usar o site 000.webhost.com para alojar o meu site e a base de dados, visto que é um alojamento gratuito. se houver algum melhor digam 🙂
NunoDinis Posted February 27, 2013 at 10:53 AM Report #497224 Posted February 27, 2013 at 10:53 AM Se tem o phpmyadmin é indiferente usares um servidor local ou não. Depois de carregares na BD aparece-te no menu horizontal a opção Designer, certo ? Depois guiaste por aqui Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
austinmrs Posted February 27, 2013 at 11:02 AM Author Report #497226 Posted February 27, 2013 at 11:02 AM Em 27/02/2013 às 11:53, NunoDinis disse: Se tem o phpmyadmin é indiferente usares um servidor local ou não. Depois de carregares na BD aparece-te no menu horizontal a opção Designer, certo ? Depois guiaste por aqui só tem isto: http://dl.dropbox.com/u/46096897/Sem Título.jpg
NunoDinis Posted February 27, 2013 at 11:05 AM Report #497228 Posted February 27, 2013 at 11:05 AM Qual é a opção "query" ? Se não der terás de fazer à "unha" 🙂 Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
austinmrs Posted February 27, 2013 at 11:10 AM Author Report #497229 Posted February 27, 2013 at 11:10 AM Em 27/02/2013 às 12:05, NunoDinis disse: Qual é a opção "query" ? Se não der terás de fazer à "unha" 🙂 Tem isto: http://dl.dropbox.com/u/46096897/quero.jpg
NunoDinis Posted February 27, 2013 at 11:12 AM Report #497230 Posted February 27, 2013 at 11:12 AM Não não, esquece isso. Vê também se essa versão dp phpmyadmin tem esta opção: http://woork.blogspot.pt/2007/11/correct-approach-to-define.html Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
austinmrs Posted February 27, 2013 at 11:15 AM Author Report #497231 Posted February 27, 2013 at 11:15 AM Não não, esquece isso. Vê também se essa versão dp phpmyadmin tem esta opção: http://woork.blogspot.pt/2007/11/correct-approach-to-define.html não.. sabes de algum servidor free que seja porreiro? é que não queria usar local, pois assim na apresetação teria de ir lá antes instalar etc.. assim ficava tudo alojado, era mais simples
NunoDinis Posted February 27, 2013 at 11:17 AM Report #497232 Posted February 27, 2013 at 11:17 AM não.. sabes de algum servidor free que seja porreiro? Pelo que sei esse é porreiro, dentro do possível.. é que não queria usar local, pois assim na apresetação teria de ir lá antes instalar etc.. assim ficava tudo alojado, era mais simples instalar o quê ? Pôr o apache e o mysql a correr não é instalar nada 🙂 Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
HappyHippyHippo Posted February 27, 2013 at 11:17 AM Report #497233 Posted February 27, 2013 at 11:17 AM e que tal escrever SQL ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
austinmrs Posted February 27, 2013 at 11:24 AM Author Report #497234 Posted February 27, 2013 at 11:24 AM Pelo que sei esse é porreiro, dentro do possível.. instalar o quê ? Pôr o apache e o mysql a correr não é instalar nada 🙂 Como assim? Eu usava o easyphp antes
NunoDinis Posted February 27, 2013 at 11:28 AM Report #497235 Posted February 27, 2013 at 11:28 AM Nunca usei, mas os pressupostos devem ser os mesmos em todos os servidores locais. Eu utilizo o xampp. Segue a demonstração para veres como é simples. http://www.apachefriends.org/en/xampp-windows.html e que tal escrever SQL ? Era para mim ou para ele ? 🙂 Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now