martinhocosta Posted August 1, 2013 at 09:16 PM Report #520633 Posted August 1, 2013 at 09:16 PM boas!!! estou a aprender php e tive este erro que não consegui resolver Erro. (!) Erro de análise: erro de sintaxe, T_CONSTANT_ENCAPSED_STRING inesperada em C: \ wamp \ www \ enca \ index.php on line 64 //faz o upload da imagem move_uploaded_file($imagem["tmp_name"], $caminho_imagem); //insere os dados no banco $sql= mysql_query("INSERT INTO plantas VALUES('','".$nome_imagem"', '".$nome_imagem"')"); // se der if($sql) { echo"FIXE"; } não consigo corrigir o erro, alguém me pode dar uma dica!!!!=) cumprimentos:) a linha do erro é a seguinte $sql= mysql_query("INSERT INTO plantas VALUES('','".$nome_imagem"', '".$nome_imagem"')");
tiagotavares Posted August 1, 2013 at 09:23 PM Report #520634 Posted August 1, 2013 at 09:23 PM Boas, O erro é porque começas os values do insert com , Espero ter ajudado Tiago Tavares
HappyHippyHippo Posted August 1, 2013 at 09:33 PM Report #520636 Posted August 1, 2013 at 09:33 PM (edited) O erro é porque começas os values do insert com , infelizmente o problema não é ai ... o problema não é de SQL mas sim de sintaxe do PHP olha bem para o teu código : //faz o upload da imagem move_uploaded_file($imagem["tmp_name"], $caminho_imagem); //insere os dados no banco $sql= mysql_query("INSERT INTO plantas VALUES('','".$nome_imagem"', '".$nome_imagem"')"); // A A // | | // se der if($sql) { echo"FIXE"; } Edited August 1, 2013 at 09:33 PM by HappyHippyHippo 1 Report IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
nelsonr Posted August 1, 2013 at 09:35 PM Report #520637 Posted August 1, 2013 at 09:35 PM Falta ai uns pontos para juntar as strings. $sql= mysql_query("INSERT INTO plantas VALUES('','".$nome_imagem."', '".$nome_imagem."')");
martinhocosta Posted August 1, 2013 at 09:47 PM Author Report #520641 Posted August 1, 2013 at 09:47 PM pois este já era=) mas apareceu.me Notice: Undefined variable: pós em C: \ wamp \ www \ enca \ index.php on line 17 Chamar Pilha # Tempo Memória Função Localização 1 0,0019 686360 {Main} () .. \ Index.php : 0
HappyHippyHippo Posted August 1, 2013 at 09:57 PM Report #520642 Posted August 1, 2013 at 09:57 PM que linha é essa ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
martinhocosta Posted August 1, 2013 at 10:06 PM Author Report #520643 Posted August 1, 2013 at 10:06 PM ja sei qual era mas não estou a conseguir inserir a minha imagem na base de dados <form action="" method="post" enctype="multipart/form-data" name="Cadastrar"> <input type="text" name="nomePlanta" /> <input type="file" name="imagem" /> <input type="submit" name="Cadastrar" value="Cadastrar" /> </form> <?php $conn = @mysql_connect("localhost", "root", "martinho") or die("problemas de conexao"); $db = @mysql_select_db("databaseencaixa", $conn) or die("problemas de conexao"); //se o usuario clicou no botao cadastrar if (isset($_post['Cadastrar'])) { //recuperar os dados dos campos $nomePlanta = $_POST['nomePlanta']; $imagem = $_POST['imagem']; //se a foto estiver sido seleccionada if (!empty($imagem["name"])) { //largura maxima de pixeis $largura = 150; //altura maxima de pixeis $altura = 180; //tamanho maximo do arquivo em bytes $tamanho = 1000; //verificar se o arquivo éuma imagem if (!preg_match("/^image\/(pjpeg|jpeg|png|gif|bmp", $imagem["type"])) { $error[1] = "isso nao é imagem"; } //pega as dimensoes da imagem $dimensoes = getimagesize($imagem["tmp_name"]); //verifica se a largura da imagem é maior que a largura permitida if ($dimensoes[0] > $largura) { $error[2] = "isso nao é imagem"; } //verifica se a altura da imagem é maior que a largura permitida if ($dimensoes[1] > $altura) { $error[3] = "isso nao é imagem"; } //verifica se a imagem é maior e maior que o permitido if ($imagem["size"] > $tamanho) { $error[4] = "isso nao é imagem"; } //se nao existir erros if (count($error) == 0) { //pega extencao da imagem preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $imagem["name"], $ext); //gera nome unico para a imagem $nome_imagem = md5(uniqid(time())) . "." . $ext[1]; //caminho onde fica a imagem $caminho_imagem = "uploads/" . $nome_imagem; //faz o uploaf fa imagem move_uploaded_file($imagem["tmp_name"], $caminho_imagem); //insere os dados no banco $sql = mysql_query("INSERT INTO plantas VALUES('',$nomePlanta, $nome_imagem)"); // se der if ($sql) { echo "FIXE"; } } if (count($error) != 0) { foreach ($error as $erro) { echo $error; } } } } ?>
HappyHippyHippo Posted August 1, 2013 at 10:30 PM Report #520648 Posted August 1, 2013 at 10:30 PM o que aconteceu ao $_FILES ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
martinhocosta Posted August 1, 2013 at 10:39 PM Author Report #520650 Posted August 1, 2013 at 10:39 PM tenho este para fazer o upload? move_uploaded_file($imagem["tmp_name"], $caminho_imagem);
martinhocosta Posted August 1, 2013 at 11:13 PM Author Report #520652 Posted August 1, 2013 at 11:13 PM ja corrigi alguns erros mas continua a não funcionar!!!! <!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="" method="post" enctype="multipart/form-data" name="Cadastrar"> <input type="text" name="nomePlanta" /> <input type="file" name="imagem" /> <input type="submit" name="cadastrar" value="Cadastrar" /> </form> <?php $conn=@mysql_connect("localhost", "root", "martinho") or die ("problemas de conexao"); $db=@mysql_select_db("databaseencaixa", $conn) or die("problemas de conexao"); //se o usuario clicou no botao cadastrar if(isset ($_post['cadastrar'])) { //recuperar os dados dos campos $nomePlanta=$_POST['nomePlanta']; $imagem=$_FILES["imagem"]; //se a foto estiver sido seleccionada if(!empty ($imagem["name"])) { //largura maxima de pixeis $largura=150; //altura maxima de pixeis $altura=180; //tamanho maximo do arquivo em bytes $tamanho=1000; //verificar se o arquivo éuma imagem if(!preg_match("/^image\/(pjpeg|jpeg|png|gif|bmp)$/", $imagem["type"])) { $error[1]="isso nao é imagem"; } //pega as dimensoes da imagem $dimensoes=getimagesize($imagem["tmp_name"]); //verifica se a largura da imagem é maior que a largura permitida if($dimensoes[0]>$largura) { $error[2]="isso nao é imagem"; } //verifica se a altura da imagem é maior que a largura permitida if($dimensoes[1]>$altura) { $error[3]="isso nao é imagem"; } //verifica se a imagem é maior e maior que o permitido if($imagem["size"]>$tamanho) { $error[4]="isso nao é imagem"; } //se nao existir erros if (count ($error)==0) {//pega extencao da imagem preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i",$imagem["name"], $ext); //gera nome unico para a imagem $nome_imagem=md5(uniqid(time())). "." . $ext[1]; //caminho onde fica a imagem $caminho_imagem="uploads/" . $nome_imagem; //faz o uploaf fa imagem move_uploaded_file($imagem["tmp_name"], $caminho_imagem); //insere os dados no banco $sql= mysql_query("INSERT INTO plantas VALUES('','".$nomePlanta."', '".$nome_imagem."')"); // se der if($sql) { echo"FIXE"; } } if (count($error)!= 0) { foreach($error as $erro) { echo $error; } } } } ?> </body> </html> cumprimentos,
martinhocosta Posted August 2, 2013 at 12:06 AM Author Report #520654 Posted August 2, 2013 at 12:06 AM (!) Warning: preg_match () [ function.preg-match ]: No final do delimitador '/' encontrado em C: \ wamp \ www \ enca \ usuario.php na linha 20 Chamar Pilha # Tempo Memória Função Localização 1 0,0014 690768 {Main} () .. \ Usuario.php : 0 2 0,0029 692856 preg_match () .. \ Usuario.php : 20 preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i",$imagem["name"], $ext);
HappyHippyHippo Posted August 2, 2013 at 07:38 AM Report #520661 Posted August 2, 2013 at 07:38 AM preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i",$imagem["name"], $ext); // A // | // para que serve este caracter '\' ? IRC : sim, é algo que ainda existe >> #p@p Portugol Plus
martinhocosta Posted August 3, 2013 at 12:24 AM Author Report #520731 Posted August 3, 2013 at 12:24 AM (edited) esta linha não me está a armazenar na base de dados??? $sql= mysql_query("INSERT INTO plantas VALUES('','".$nomePlanta."', '".$nome_imagem."')"); Edited August 3, 2013 at 02:32 AM by yoda
N3lson Posted August 3, 2013 at 08:21 AM Report #520738 Posted August 3, 2013 at 08:21 AM esta linha não me está a armazenar na base de dados??? $sql= mysql_query("INSERT INTO plantas VALUES('','".$nomePlanta."', '".$nome_imagem."')"); Altera para,.... e testa $sql="INSERT INTO plantas VALUES('','".$nomePlanta."', '".$nome_imagem."')"; mysql_query($sql); You can't do it, kid. But don't worry, my boy. You're not the only one. No one else can do it.
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