You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '://[/url'>', '����\0JFIF\0\0\0d\0d\0\0��\0Ducky\0\0\0\0\0 (\0\0��\0Adobe\0' at line 3
que podria ser
Este es funciones2.php
Código PHP:
<?PHP
function bbcode($detalle) {
$detalle = str_replace("\n","<br>",$detalle); //Saltos de Linea
$detalle = str_replace("[b]","<b>",$detalle); //Negrita
$detalle = str_replace("[/b]","</b>",$detalle); //Negrita
$detalle = str_replace("[i]","<i>",$detalle); //Italic
$detalle = str_replace("[/i]","</i>",$detalle); //Italic
$detalle = str_replace("[u]","<u>",$detalle);
//imagen
$detalle = str_replace("[/u]","</u>",$detalle);
$detalle = str_replace("[img=","<img src='",$detalle);
$detalle = str_replace("]","'>",$detalle);
//Link
$detalle = str_replace("[noparse][url]","<a href='$detalle'>",$detalle);
$detalle = str_replace("[/url][/noparse]","</a>",$detalle);
$detalle = str_replace(':S','<img src="smilies/confundido.gif">', $detalle);
$detalle = str_replace(':)','<img src="smilies/lloron.gif">', $detalle);
$detalle = str_replace('8)','<img src="smilies/pijo.gif">', $detalle);
$detalle = str_replace(':D','<img src="smilies/sonrisa.gif">', $detalle);
$detalle = str_replace(':O','<img src="smilies/sorprendido.gif">', $detalle);
return $detalle;
}
function filtro_palabras($detalle) {
$palabras = array("pudrete","maldito","mamaguevo","mierda","coño de la pepa","concha de la lora","concha","polla","verga","joder","joda","Marico","marico","coño","coño de la madre","tonto", "feo", "*****");
$division = explode(" ", $detalle);
foreach ($division as $key => $valor) {
foreach ($palabras as $palabra) {
if (strtolower($valor) == $palabra) {
$division[$key] = "@&%#";
}
}
}
$detalle = implode(" ",$division);
return $detalle;
}
?>
este es el de postear la informacion
Código HTML:
<html> <head> <title>Noticias</title> </head> <body> <script type="text/javascript"> function instag(tag){ var input = document.frmimage.detalle; if(typeof document.selection != 'undefined' && document.selection) { var str = document.selection.createRange().text; input.focus(); var sel = document.selection.createRange(); sel.text = "[" + tag + "]" + str + "[/" +tag+ "]"; sel.select(); return; } else if(typeof input.selectionStart != 'undefined'){ var start = input.selectionStart; var end = input.selectionEnd; var insText = input.value.substring(start, end); input.value = input.value.substr(0, start) + '['+tag+']' + insText + '[/'+tag+']'+ input.value.substr(end); input.focus(); input.setSelectionRange(start+2+tag.length+insText.length+3+tag.length,start+2+tag.length+insText.length+3+tag.length); return; } else{ input.value+=' ['+tag+']Reemplace este texto[/'+tag+']'; return; } } function inslink(){ var input = document.frmimage.detalle; if(typeof document.selection != 'undefined' && document.selection) { var str = document.selection.createRange().text; input.focus(); var my_link = prompt("Enter URL:","http://"); if (my_link != null) { if(str.length==0){ str=my_link; } var sel = document.selection.createRange(); sel.text = "[noparse][url]" + my_link + "[/url][/noparse]"; sel.select(); } return; }else if(typeof input.selectionStart != 'undefined'){ var start = input.selectionStart; var end = input.selectionEnd; var insText = input.value.substring(start, end); var my_link = prompt("Enter URL:","http://"); if (my_link != null) { if(insText.length==0){ insText=my_link; } input.value = input.value.substr(0, start) +"[noparse][url]" + my_link + "[/url][/noparse]"+ input.value.substr(end); input.focus(); input.setSelectionRange(start+11+my_link.length+insText.length+4,start+11+my_link.length+insText.length+4); } return; }else{ var my_link = prompt("Ingresar URL:","http://"); var my_text = prompt("Ingresar el texto del link:",""); input.value+=" [a href=\"" + my_link + "\"]" + my_text + "[/a]"; return; } } </script> [PHP] <?php include("funciones2.php");[/PHP] header ('Content-type: text/html; charset=utf-8'); // Verificamos que el formulario no ha sido enviado aun $postback = (isset($_POST["enviar"])) ? true : false; if($postback){ // errores error_reporting(E_ALL); # Altura de el thumbnail en píxeles define("ALTURA", 100); # Nombre del archivo temporal del thumbnail define("NAMETHUMB", "/tmp/thumbtemp"); define("DBHOST", "$servidor"); define("DBNAME", "$database"); define("DBUSER", "$usuario"); define("DBPASSWORD", "$password"); $mimetypes = array("image/jpeg", "image/pjpeg", "image/gif", "image/png"); $name = $_FILES["foto"]["name"]; $type = $_FILES["foto"]["type"]; $tmp_name = $_FILES["foto"]["tmp_name"]; $size = $_FILES["foto"]["size"]; if(!in_array($type, $mimetypes)) die("Seleciones una Imagen o El archivo que subiste no es una Imagen válida"); switch($type) { case $mimetypes[0]: case $mimetypes[1]: $img = imagecreatefromjpeg($tmp_name); break; case $mimetypes[2]: $img = imagecreatefromgif($tmp_name); break; case $mimetypes[3]: $img = imagecreatefrompng($tmp_name); break; } $datos = getimagesize($tmp_name); $ratio = ($datos[1]/ALTURA); $ancho = round($datos[0]/$ratio); $thumb = imagecreatetruecolor($ancho, ALTURA); imagecopyresampled($thumb, $img, 0, 0, 0, 0, $ancho, ALTURA, $datos[0], $datos[1]); switch($type) { case $mimetypes[0]: case $mimetypes[1]: imagejpeg($thumb, NAMETHUMB); break; case $mimetypes[2]: imagegif($thumb, NAMETHUMB); break; case $mimetypes[3]: imagepng($thumb, NAMETHUMB); break; } # foto original $fp = fopen($tmp_name, "rb"); $tfoto = fread($fp, filesize($tmp_name)); $tfoto = addslashes($tfoto); fclose($fp); # thumbnail $fp = fopen(NAMETHUMB, "rb"); $tthumb = fread($fp, filesize(NAMETHUMB)); $tthumb = addslashes($tthumb); fclose($fp); // Borra archivos temporales @unlink($tmp_name); @unlink(NAMETHUMB); //proceso de almacenamiento $fuente = $_POST["fuente"]; $categoria = $_POST["categoria"]; $titulo = (ucfirst($_POST["titulo"])); $subtitulo = $_POST["subtitulo"]; $detalle = bbcode(filtro_palabras(nl2br(htmlspecialchars(urldecode($_POST["detalle"]))))); $link = mysql_connect(DBHOST, DBUSER, DBPASSWORD) or die(mysql_error($link));; mysql_select_db(DBNAME, $link) or die(mysql_error($link)); $sql = "INSERT INTO noticias(fuente, categoria, titulo, subtitulo, detalle, foto, thumb, mime) VALUES ('$fuente', '$categoria', '$titulo', '$subtitulo', '$detalle', '$tfoto', '$tthumb', '$type')"; mysql_query($sql, $link) or die(mysql_error($link)); echo " Archivos Guardados, correctamente "; exit(); } ?> <form name="frmimage" id="frmimage" method="post" enctype="multipart/form-data" action="<?php echo $_SERVER['PHP_SELF'];?>"> <label>Titulo:</label> <input name="titulo" type="text" class="text" id="titulo" /> <br /><br /> <label>Subtitulo</label> <input name="subtitulo" id="subtitulo" cols="60" rows="5" tabindex="4"><br /><br /> <label> Detalle:</label> <br /><br /> <input type="button" name="Submit" value="Imagen" onClick="inslink()" id="imagen"> <input type="button" name="Submit" value="B" onClick="instag('b')" id="B"> <br /><br /> <textarea name="detalle" id="detalle" cols="60" rows="10" tabindex="4"></textarea> <br /><br /><br /> <label>Seleciones una imagen</label> <input name="foto" type="file" class="text" id="foto" /> <p> </p> <label>Fuente:</label> <br> <input name="fuente" type="text" class="text" id="fuente" value="http://" /> </p> <p> <label>Categoria:</label><br> <select name="categoria" id="categoria"> <option selected="selected" value="">Seleccionar categoría</option> <optgroup label="-"></optgroup> <option>Programacion</option> <option>Informatica</option> <option>Computacion</option> <option>Arte</option> <option>Noticias</option> <option>Musica</option> </select> </p> <p> <input name="fecha" type="hidden" id="fecha" /> <input name="enviar" type="submit" id="enviar" value="Publicar" /> </p> </form> </body> </html>
Código:
CREATE TABLE IF NOT EXISTS `noticias` ( `id` int(3) NOT NULL auto_increment, `titulo` varchar(255) NOT NULL default '', `subtitulo` text NOT NULL, `detalle` text NOT NULL, `fuente` varchar(255) NOT NULL default '', `categoria` varchar(10) NOT NULL, `foto` blob NOT NULL, `thumb` blob NOT NULL, `mime` varchar(40) NOT NULL default '', `fecha` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=34 ;