Lucas Weizenmann Postado Outubro 13, 2008 Denunciar Share Postado Outubro 13, 2008 sou novo no forum. boa tarde!estou criando uma atualização de notícias... mas.. .->Warning: sprintf() [function.sprintf]: Too few arguments in /diretorio/arquivo.php on line 47Entendi que, estou selecionando menos campos do que o UPDATE SET precisa...ou seja....sprintf("SELECT title, content FROM tb_notice WHERE id = %s", $parametro_upnotice); mas aqui estou setando para os mesmos dois campos: sprintf("UPDATE tb_notice SET title=%s, content=%s, WHERE id=%s", GetSQLValueString($_POST['title'], "text"), GetSQLValueString($_POST['content'], "text")); o parametro é: $parametro_upnotice = "-1"; if (isset($_GET['id'])) { $parametro_upnotice = (get_magic_quotes_gpc()) ? $_GET['id'] : addslashes($_GET['id']); }a tabela tem mais campos, mas como é só pra atualizar o post, não estou setando a hora da inserção do post e a foto estou enviando por outro bloco do codigo... .Alguém?? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 p4t0X Postado Outubro 13, 2008 Denunciar Share Postado Outubro 13, 2008 sprintf("UPDATE tb_notice SET title=%s, content=%s, WHERE id=%s", GetSQLValueString($_POST['title'], "text"), GetSQLValueString($_POST['content'], "text")); Aqui você tá usando 3 variáveis do tipo string (3 "%s"), e tá dando apenas dois valores, o certo seria 3!Acho que é isso!Falta você falar qual o ID que é ;x[]'s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Lucas Weizenmann Postado Outubro 14, 2008 Autor Denunciar Share Postado Outubro 14, 2008 certo!... fiz diferente e funcionou legal, ou seja, não retorna erros... mas...parece que a algo errado no script, porque simplesmente nada acontece. é para atualizar uma noticia... eu to meio perdido quanto á organização do codigo. quando dá o submit no form de update, a foto precisa ser apagada e substituida por uma outra que foi selecionada.Não está ocorrendo nenhuma alteração: alguém pode dar uma ajuda? o codigo tá pronto, parece-me que falta organizar ele só...<?php require_once "includes/conectar.php"; $parametro_upnotice = "-1"; if (isset($_GET['id'])) { $parametro_upnotice = (get_magic_quotes_gpc()) ? $_GET['id'] : addslashes($_GET['id']); } $id = $_GET['id']; $title = $_GET['title']; $content = $_GET['content']; mysql_select_db("marlos_empes", $conn); $select = ("SELECT title, content FROM tb_notice WHERE id=$id"); $select2 = ("SELECT foto FROM tb_notice WHERE id=$id"); echo $select; $query_upnotice = sprintf($select, $parametro_upnotice); $query_upnotice2 = sprintf($select2, $parametro_upnotice); $upnotice = mysql_query($query_upnotice, $conn) or die(mysql_error()); $upnotice2 = mysql_query($query_upnotice2, $conn) or die(mysql_error()); $row_upnotice = mysql_fetch_assoc($upnotice); $row_upnotice2 = mysql_fetch_assoc($upnotice2); $totalRows_upnotice = mysql_num_rows($upnotice); function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") {função} $editFormAction = $_SERVER['PHP_SELF']; if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']); } if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form1")) { $updateSQL = sprintf("UPDATE tb_notice SET title='$title', content='$content', WHERE id=$id", GetSQLValueString($_POST['title'], "text"), GetSQLValueString($_POST['content'], "text"), GetSQLValueString($_POST['id'], "int")); $arquivo = $_FILES["foto"]; -> input type file está sendo chamado aqui? $config["tamanho"] = 50688; $config["largura"] = 800; $config["altura"] = 800; if($arquivo==true) { vericação se é imagem } else{ unlink("notice_images/".$row_upnotice2['foto']); -> apagar fica aqui? $nome_foto = $_FILES['foto']['name']; -> essa variavel está pegando o nome da foto? $nome_foto = md5(uniqid(time())) . "." . $ext[1]; -> vai converter para md5? $grava = (mysql_query("INSERT INTO marlos_empes.tb_notice (foto) VALUES ('$imagem_nome')")); preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $arquivo["name"], $ext); $imagem_dir = "notice_images/" . $imagem_nome; move_uploaded_file($arquivo["tmp_name"], $imagem_dir); echo "Notícia enviada com sucesso!"; }} } ?>não entendi como essa logica não funciona. sou iniciante. está mesmo errado? nenhum erro é retornado. e if dentro de if eu uso assim mesmo? -> if{if}?obrigado ate então! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Lucas Weizenmann Postado Outubro 15, 2008 Autor Denunciar Share Postado Outubro 15, 2008 po.. já era? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Lucas Weizenmann
sou novo no forum. boa tarde!
estou criando uma atualização de notícias... mas.. .->
Warning: sprintf() [function.sprintf]: Too few arguments in /diretorio/arquivo.php on line 47
Entendi que, estou selecionando menos campos do que o UPDATE SET precisa...
ou seja....
mas aqui estou setando para os mesmos dois campos: o parametro é:a tabela tem mais campos, mas como é só pra atualizar o post, não estou setando a hora da inserção do post e a foto estou enviando por outro bloco do codigo... .
Alguém??
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.