Foros del Web » Programando para Internet » PHP »

Ayuda como escribir html en php y mysql Por favor !!!

Estas en el tema de Ayuda como escribir html en php y mysql Por favor !!! en el foro de PHP en Foros del Web. Buenas, tengo el siguiente codigo que me escribe unos datos en unas tablas de mysql <?php include('conexion.php'); //Conexion a la base de datos require_once('conexion.php'); //Insertamos ...
  #1 (permalink)  
Antiguo 02/07/2010, 20:32
 
Fecha de Ingreso: agosto-2008
Mensajes: 48
Antigüedad: 15 años, 8 meses
Puntos: 0
Ayuda como escribir html en php y mysql Por favor !!!

Buenas, tengo el siguiente codigo que me escribe unos datos en unas tablas de mysql

<?php

include('conexion.php');

//Conexion a la base de datos
require_once('conexion.php');

//Insertamos los datos:
$insert = "INSERT INTO CONSULTAS (Nombre, email, Descripcion, Aprobado) VALUES ('".mysql_real_escape_string($_POST['Nombre'])."', '".mysql_real_escape_string($_POST['email'])."', '".mysql_real_escape_string($_POST['Descripcion'])."', '0')";
$result = mysql_query($insert) or die(mysql_error());

if(!$result)
{
echo "Los datos no pudieron ser insertados";
}
else {


header("Location: enviarconsulta.html");
}
?>


Entonces la table de mysql queda asi

CREATE TABLE `CONSULTAS` (
`ID` INT(11) auto_increment NOT NULL ,
`Nombre` VARCHAR( 50 ) NOT NULL ,
`email` VARCHAR( 50 ) NOT NULL ,
`Descripcion` VARCHAR( 5000 ) NOT NULL ,
`Aprobado` VARCHAR( 50 ) NOT NULL ,
PRIMARY KEY ( `ID` )
) ENGINE = MyISAM


Y entonces despues de escritos los datos en la base de datos y en la tabla correspondiente los muestro con este codigo


<?php
//conexion a la base de datos

require_once('conexion.php');

//Creamos una consulta para filtrar los datos y un bucle para mostrarlos todos:
$select = "SELECT * FROM CONSULTAS WHERE Aprobado = '0'";
$query = mysql_query($select) or die(mysql_error());
// $row = mysql_fetch_assoc($query);
$num= mysql_num_rows($query); //Obtener el numero de filas

$i=0; //AGREGADO
while ($i < $num) { //AGREGADO
//while ($row = mysql_fetch_assoc($query)) { //REMOVIDO
$Nombre=mysql_result($query,$i,"Nombre"); //AGREGADO
$email=mysql_result($query,$i,"email"); //AGREGADO
$Descripcion=mysql_result($query,$i,"Descripcion") ; //AGREGADO
$id=mysql_result($query,$i,"id"); //AGREGADO
$ID=mysql_result($query,$i,"ID"); //AGREGADO AHORA

echo $Nombre."<br>"; //AGREGADO
echo $email."<br>"; //AGREGADO
echo $Descripcion."<br>"; //AGREGADO
echo $ID."<br>"; //AGREGADO


echo '<a href="rechazar.php?ID='.$id.'">Borrar Consulta</a> <br>';
echo '<hr></hr>';


$i+=1; //AGREGADO
}
?>




<html><h7>Parra borrar un comentario Pulse el boton "Borrar" debajo del mismo.</html>


El problema esque si inserto Codigo html en el TXT area no sale, por ejemplo <img src=http://

No sale el codigo html por la obvia razon de que esta escribiendo en formato texto, el formulario que uso para escribir los datos, si por ejemplo quisiera agregar opciones de edicion de texto al campo a ese textarea no me tomaria el html como puedo hacer que me tome el html? Lo quiero para añadirle uno de los editores de texto tipo tinymce o CKEditor pero no entiendo bien la parte para que al momento de escribir los datos en mysql tome el html como tal, y asi como lo dejes en el editor de texto se quede en la pagina que muestre los datos,


Por ejemplo intente Editar un texto primero con EL TINYMCE Y EL TEXTO EN EL EDITOR SE VE ASI





DESPUES COPIO EL CODIGO HTML DEL EDITOR DE TEXTO Y LO PEGO EN MI FORMULARIO PARA INTENTAR QUE EL TEXTO QUEDE FORMATEADO DE LA MISMA FORMA ASI






POR ULTIMO PEGO EL CODIGO HTML EN MI FORMULARIO CON LA INTENCION DE QUE TOME EL HTML Y SAQUE EL FORMATO DEL TEXTO COMO LO HIZO EL EDITOR PERO NO LO TOMA Y AL MOMENTO DE MOSTRAR LOS DATOS DE LA BASE DE DATOS SE VE ASI





Quisiera saber como puedo hacer que tome el html del editor de texto al momento de escribir los datos en mysql o al momento de mostrarlos no se bien donde este la falla.

Aqui dejo los links de las paginas con el formulario y la muestra de los datos para que vean el funcionamiento y como no toma el html


http://gjfhhys.webcindario.com/ver.php

http://gjfhhys.webcindario.com/enviarconsulta.html


Gracias espero puedan ayudarme !!
  #2 (permalink)  
Antiguo 02/07/2010, 21:55
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Ayuda como escribir html en php y mysql Por favor !!!

guardar datos en formato HTML en la BD representa un riesgo a la hora de mostrarlos porque pueden inyectar XSS, aún así cuando lo colocas dentro de un textarea el javascript no se ejecuta, pero obviamente se mostrará solo el código, si ese textarea esta controlado por el editor tyneMCE él se encarga de hacerlo y mostrar el texto formateado.

si quieres mostrar el texto con formato no te queda opción de volcarlo directamente a la salida del script, pero para evitar XSS podrías usar BBCode (debes conseguir la librería), entre las opciones del tyneMCE debe estar la de devolver BBCode en vez de html, lo que te resultaría perfecto.
  #3 (permalink)  
Antiguo 02/07/2010, 23:33
 
Fecha de Ingreso: agosto-2008
Mensajes: 48
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Ayuda como escribir html en php y mysql Por favor !!!

Gracias por tu respuesta miren ya he integrado el editor TinyMCE al script que escribe los datos en mi base de datos pero aun asi sigue sin mostrarme el html aunque este formateado en el editor de texto observen estas direcciones para el ejemplo ! Gracias !

En esta pagina esta ya añadido el editor de texto a mi script en el action del formulario

http://gjfhhys.webcindario.com/usando.html



Y en esta pagina se muestran los resultados despues de escribir en la base de datos la informacion del formulario


http://gjfhhys.webcindario.com/ver.php



Como podran darse cuenta el html sigue sin aparecer, no respeta las opciones del editor por decirlo de alguna forma


En relacion a lo de usar bbcode, ese formulario esta pensado para que solamente personas autorizadas puedan agregar informacion, como un panel de noticias, protegido con contraseña el acceso asi que no hay problema por los riesgos de la inyeccion de XSS

Ojala puedan decirme cual es el problema :S gracias !

Etiquetas: escribir, favor, html, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:52.