grldesign 0 Denunciar post Postado Dezembro 16, 2003 Abaixo está o código do arquivo que executa a query no sql. Acho que o erro é simples, mas pra mim que to faz horas fuçando em PHP tá complicado de identificar. Se alguem souber me diga. Arquivo GRAVA.PHP <?php include('config/config.inc.php'); include ('includes/data.php'); $titulo = $_POST[not_titulo]; $noticia = $_POST[not_noticia]; $data = $data_sql; $hora = $hora_sql; $org = "INSERT INTO ctg_noticias (id, titulo, texto, data, hora) VALUES('', '$titulo', '$noticia', '$data', '$hora'";$gravar = mysql_query($org);if(!$gravar) {?><script>window.location="noticias.php?acao=erro"</script><?}else {?><script>window.location="noticias.php?acao=principal"</script><? } ?> Um abraço. Compartilhar este post Link para o post Compartilhar em outros sites
Realm 0 Denunciar post Postado Dezembro 16, 2003 viu.... acho que nessa linha: $org = "INSERT INTO ctg_noticias (id, titulo, texto, data, hora) VALUES('', '$titulo', '$noticia', '$data', '$hora'";tah faltando o parenteses no finalpra ficar assim$org = "INSERT INTO ctg_noticias (id, titulo, texto, data, hora) VALUES('', '$titulo', '$noticia', '$data', '$hora')";deve ser isso........ Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 16, 2003 Realm, era isso mesmo véi!Você vê. Um erro tão banal que o excesso de tempo emcima do PC não permite que a gente note.Obrigadão mesmo! B)/> Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 16, 2003 Continuando o problema! Aquele foi resolvido graças a deus. Agora vem a parte que acho um pouco mais complicada. Abaixo segue o código de gravação de um arquivo de imagem no banco de dados (só endereço da mesma) para depois ser utilizado na página. Este arquivo é enviado e após disso é feita a gravação. Só que ele retorna todos os erros: -> Não Grava no Banco de Dados; -> Formato de Arquivo inválido; -> Nome de arquivo já em uso; Eu tinha conseguido fazer este sistema funcionar, mas acabei me desfazendo dele a pouco mais de uma hora. Agora tive que recomeçar e ficou dando estes erros. Além disso, gostaria de permitir o envio tanto de JPG como de GIF, pois quando consegui só foi possível enviar JPG. grava.php <?php include('config/config.inc.php'); include('includes/data.php'); $titulonot = $_POST[not_titulo]; $noticia = $_POST[not_noticia]; $datanot = $data_sql; $horanot = $hora_sql;if($figura <> 'none') {if (($figura_type <> 'image/pjpeg')) { $erros++; $errors = $errors."Formato Inválido<br>";}if($figura_size > 102400) { $erros++; $errors = $errors."Tamanho da imagem excede o limite de 100 Kb.<br>";}$caminho = "../figuras/noticias/$figura_name";if(file_exists($caminho)) { $erros++; $errors = $errors."Nome de arquivo já em uso. Renomeie-o e tente novamente.<br>";}if($erros == 0) {copy($figura, $caminho); $org = "INSERT INTO ctg_noticias (id, titulo, texto, imagem, data, hora) VALUES('', '$titulonot', '$noticia', '$caminho', '$datanot', '$horanot')";$gravar = mysql_query($org);if(!$gravar) {?><script>window.location="noticias.php?acao=erro"</script><?}else {?><script>window.location="noticias.php?acao=principal"</script><? }}else { echo "<br>Não foi possível gravar no Banco de Dados!"; echo "<br>$errors"; } } ?> Desde já... VALEU! B)/> Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Dezembro 16, 2003 Ué, onde você define o endereço da imagem, só vejo as seguintes variáveis: titulo, noticia, data e hora, veja aí. ;)/> Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 16, 2003 <?php include('config/config.inc.php');include('includes/data.php');$titulonot = $_POST[not_titulo];$noticia = $_POST[not_noticia];$datanot = $data_sql;$horanot = $hora_sql;if($figura <> 'none') {if (($figura_type <> 'image/pjpeg')) {$erros++;$errors = $errors."Formato Inválido<br>";}if($figura_size > 102400) {$erros++;$errors = $errors."Tamanho da imagem excede o limite de 100 Kb.<br>";}[COLOR=red][B]$caminho = "../figuras/noticias/$figura_name";[/B][/COLOR]if(file_exists($caminho)) {$erros++;$errors = $errors."Nome de arquivo já em uso. Renomeie-o e tente novamente.<br>";}if($erros == 0) {copy($figura, $caminho);$org = "INSERT INTO ctg_noticias (id, titulo, texto, imagem, data, hora) VALUES('', '$titulonot', '$noticia', '[B][COLOR=red]$caminho'[/COLOR][/B], '$datanot', '$horanot')";$gravar = mysql_query($org);if(!$gravar) {?><script>window.location="noticias.php?acao=erro"</script><?}else {?><script>window.location="noticias.php?acao=principal"</script><? }}else { echo "<br>Não foi possível gravar no Banco de Dados!"; echo "<br>$errors";}}?> Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 16, 2003 Acho que o que está em vermelho é o que você me perguntou. Tentei utilizando um GET na variavel que vinha do formulário e continuou não funcionando. <?php include('config/config.inc.php'); include('includes/data.php'); $titulonot = $_POST[not_titulo]; $noticia = $_POST[not_noticia]; $datanot = $data_sql; $horanot = $hora_sql; if($figura <> 'none') { if (($figura_type <> 'image/pjpeg')) { $erros++; $errors = $errors."Formato Inválido<br>"; } if($figura_size > 102400) { $erros++; $errors = $errors."Tamanho da imagem excede o limite de 100 Kb.<br>"; } $caminho = "../figuras/noticias/$figura_name"; if(file_exists($caminho)) { $erros++; $errors = $errors."Nome de arquivo já em uso. Renomeie-o e tente novamente.<br>"; } if($erros == 0) { copy($figura, $caminho); $org = "INSERT INTO ctg_noticias (id, titulo, texto, imagem, data, hora) VALUES('', '$titulonot', '$noticia', '$caminho', '$datanot', '$horanot')"; $gravar = mysql_query($org); if(!$gravar) { ?><script>window.location="noticias.php?acao=erro"</script><? } else { ?><script>window.location="noticias.php?acao=principal"</script><? } } else { echo "<br>Não foi possível gravar no Banco de Dados!"; echo "<br>$errors"; } } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Dezembro 16, 2003 <?php include('config/config.inc.php'); include('includes/data.php'); $titulonot = $_POST[not_titulo]; $noticia = $_POST[not_noticia]; $datanot = $data_sql; $horanot = $hora_sql; if($figura <> 'none') { if (($figura_type <> 'image/pjpeg')) { $erros++; $errors = $errors."Formato Inválido<br>"; } if($figura_size > 102400) { $erros++; $errors = $errors."Tamanho da imagem excede o limite de 100 Kb.<br>"; } $caminho = "../figuras/noticias/$figura_name"; if(file_exists($caminho)) { $erros++; $errors = $errors."Nome de arquivo já em uso. Renomeie-o e tente novamente.<br>"; } if($erros == 0) { copy($figura, $caminho); $org = "INSERT INTO ctg_noticias (id, titulo, texto, imagem, data, hora) VALUES('', '$titulonot', '$noticia', '$caminho', '$datanot', '$horanot')"; $gravar = mysql_query($org); if(!$gravar) { ?><script>window.location="noticias.php?acao=erro"</script><? } else { ?><script>window.location="noticias.php?acao=principal"</script><? } } else { echo "<br>Não foi possível gravar no Banco de Dados!"; echo "<br>$errors"; } } ?> Cara, olha a variável em azul, onde você define ela? Ah! E no lugar de <> (vermelho) coloque != ;)/> Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 17, 2003 prescot, realmente em termos era isto. Só que não está funcionando ainda. Vou explicar a organização de pastas: -> CTG -> ADPanel -> grava.php #Arquivo que envia a imagem -> Figuras -> Noticias #Pasta de Destino da Imagem Como você pode notar, a pasta de destino está um nível acima, no caso, na raiz do site, e o arquivo que envia dentro da pasta do Painel Administrativo entende? Ele retorna o erro abaixo: Warning: Unable to open '' for reading: Permission denied in C:\apache\htdocs\ctg\adpanel\noticias_adicionar_gravar.php on line 33A Linha 33 é justamente a que executa a cópia do arquivo para a pasta de destino.Coloco abaixo as linhas referentes a este comando: copy($figura, $caminho);onde $caminho = "../figuras/noticias/$figura_name";Engraçado é que já consegui fazer este script funcionar fazendo alterações nele, só que tive problemas enquanto testava e o computador foi reiniciado, perdendo tudo que tinha feito e depois não consegui mais arrumar.Portanto permissão não é o problema, é questão de configuração, eu tenho quase certeza. Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Dezembro 17, 2003 Coloca assim: if (copy($origem, $destino)) {// Código pra gravar no dbTem certeza que a origem e destino da imagem estão certos (lembre-se, o destino deve conter o nome da imagem também, tipo, images/figura.jpg) ;)/> Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 17, 2003 Então...A variável $figura é a origem, pois pega o valor do campo file do formulário.A variável $caminho é o destino, como descrevi acima.Só que não grava. No caso de ser um nível acima, o uso de "../caminho" está certo?Aliás, fiz o que você disse do IF e continua não funcionando. Compartilhar este post Link para o post Compartilhar em outros sites
Alisson Rodrigues 3 Denunciar post Postado Dezembro 17, 2003 Hehe, o do if, é só pra não gravar no db mesmo se não for enviado a figura, o destino tá certo, tem certeza que o server aceita upload? Compartilhar este post Link para o post Compartilhar em outros sites
grldesign 0 Denunciar post Postado Dezembro 17, 2003 Neste caso tenho certeza que sim.Ele funcionou no servidor apache no meu micro!!!Estou testando ele novamente mas não está funcionando agora.Da outra vez ele funcionava corretamente, criava as imagens na pasta e tudo... agora deu problema. Compartilhar este post Link para o post Compartilhar em outros sites