como hacer que bd reconozca el color y el tipo de texto

Bueno es que puse esto:
<?
include ("conecta.php");
$texto = $_POST["texto"];
$color = $_POST["color"];
$texto = htmlentities($texto, ENT_QUOTES);
$texto = str_replace("[b]","[b]", $texto);
$texto = str_replace("[/b]","[/b]", $texto);
$texto = str_replace("[i]","[i]", $texto);
$texto = str_replace("[/i]","[/i]", $texto);
$texto = str_replace("[negro]","<font color=#000>", $texto);
$texto = str_replace("[/negro]","</font>", $texto);
$texto = str_replace("[rojo]","<font color=#FF0000>", $texto);
$texto = str_replace("[/rojo]","</font>", $texto);
$texto = str_replace("[verde]","<font color=#088A08>", $texto);
$texto = str_replace("[/verde]","</font>", $texto);
$texto = str_replace("[amari]","<font color=#FFFF00>", $texto);
$texto = str_replace("[/amari]","</font>", $texto);
$texto = str_replace("\r\n", "
", $texto);
$texto = str_replace("

", "</p>

", $texto);
$color = str_replace("<div id=bloque>","<table><td>", $color);
$intro = mysql_query("INSERT INTO anuncios (bloque, color) 
values ('$texto','$color')")or die('Error en tabla');
$intro = mysql_query ("SELECT * FROM anuncios ORDER BY id DESC LIMIT 1;") ;
Y aqui va el resto de :
$intro = mysql_query ("SELECT * FROM anuncios ORDER BY id DESC LIMIT 1;") ; 
if ($row = mysql_fetch_array($intro)){
echo "<table style='border:red 1px solid'> \n";
echo "<tr> \n";
echo "<td class='a'>su bloque</td></tr> \n";
echo "</table> \n";
echo "
 \n";
do {
echo "<div id='bloque'> \n";
echo "<table> \n";
echo "<tr> \n";
echo "<td>".$row["bloque"],$color. "</td></tr> \n";
echo "</table> \n";
} 
while ($row = mysql_fetch_array($intro));
echo "<table> \n";
echo "</table> \n";
echo "</div> \n";
}

else {
echo "¡ La base de datos está vacia !";
}
?>
¿Está bien? ¿no?
Lo mejor de caerse al tropezar, es volverse a levantar.
A ver, espera... ya nos estamos liando tu guardaun formulario y ve a la db. Mira desde alli como esta almacenado el color del fondo.
el color de fondo se guarda en la bd en el campo 'color' que es varchar>binario, con el valor hexadecimal que se select en cada option del form y ese valor hexadecimal es el que me devuelve la consulta mysql dentro del 'div id=bloque', pero NO el color.
Lo mejor de caerse al tropezar, es volverse a levantar.
Lo que entendi es que en la db se guarda el hexadecimal, ejemplo: #000000.
Pero cuando lo solicitas no te da el hexadecimal. Entonces que da? no puede dar otra cosa que la solicitada :S
Lo entendiste mal, el valor hexadecimal ES lo que me devuelve.
Ahora ¿como hacer que ese valor devuelto se convierta en color
//Esta es la llamada// echo "<div id='bloque'>",$color. "\n";
Lo mejor de caerse al tropezar, es volverse a levantar.
Creo que este tema ha de tratarse con CSS dinamico, de modo que investigaré un poco sobre esto a ver si me da resultado.
Lo mejor de caerse al tropezar, es volverse a levantar.
SOLUCIONAO.
Era facil, solo habia que ver donde estaba el cuerpo a colorear y definirlo asi: $texto = str_replace("","<td class=bgne>", $texto);
y luego darle stylo al td class
Lo mejor de caerse al tropezar, es volverse a levantar.
amm pues al fin este tema es uno de los mas grandes que e visto asta el momento pienso que deberías poner todo lo que as echo en un nuevo post y ponerlo como fijo para todas las personas que le interese esto lo puedan tomar como referencia.
Que bien que resolviste tu problema.cualquier duda ya estoy devuelta por aqui que ya tiene algo de tiempo que no he estado
saludos
Es facil programar "Solo interesate en aprender"
Me alegra volver a leerte. Cesar_ed.
En cuanto lo acabe lo pondré todo en un post, para aquel que le pueda servir, pero de momento aun faltan muchas cosa para tenerlo acabado, como por ejemplo: como subir imagenes a la bd, o como hacer que lo generado y visualizado no se guarde en la bd hasta no haber aceptado las condiciones del contrato etc...
Lo mejor de caerse al tropezar, es volverse a levantar.
Bueno viendo el interes que suscita este tema y como lo prometido es deuda, voy a aportar todo lo aprendido hasta aqui, no sin antes agradecerle a los que me ayudaron a sacarlo adelante su inestimable colaboracion.
¿COMO DARLE COLOR Y ESTILO A UN CAMPO DE BD MYSQL?
1º trendremos que crearnos un archivo js, que yo llamo colores.js en el que definimos el comportamiento del objeto, asi:
function openb(){
    bbcode=("[b]")
    pruebaform.texto.value+=bbcode
}
function closeb(){
    bbcode=("[/b]")
    pruebaform.texto.value+=bbcode
}
function openi(){
    bbcode=("[i]")
    pruebaform.texto.value+=bbcode
}
function closei(){
    bbcode=("[/i]")
    pruebaform.texto.value+=bbcode
}
function openbr(){
    bbcode=("[br]")
    pruebaform.texto.value+=bbcode
}
function openro(){
    bbcode=("[rojo]")
    pruebaform.texto.value+=bbcode
}
2º creamos nuestro form.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
<title>Page title</title>
<script type="text/javascript" src="colores.js"></script>
</head>
<body>
<form action="enviaprueba.php" enctype="multipart/form-data" method="post" name="pruebaform">

Texto en rojo
[url="#"]<input type="button" class="ro" value="rojo" />[/url]


[b]negrita[/b] [url="#"]<input type="button" class="b" value="[b]" />[/url]
[url="#"]<input type="button" class="b" value="[/b]" />[/url]


[i]cursiva[/i] [url="#"]<input type="button" class="i" value="[ i ]" />[/url]
[url="#"]<input type="button" class="i" value="[ /i ]" />[/url]


<input type="text" name="texto" wrap="VIRTUAL" />

<center><input type="submit" name="validar" value="Crear" style="margin:20px 10px" /></center> 
</form>
</body>
</html>
Observese que relacionamos el archivo "colores.js" con nuestro form, y que nuestra pagina publica es "HTML 4.0" y no "XHTML" esto es importante.
Observese tambien que el form lleva el name="pruebaform y los eventos a relizar el objeto. Ejemplo: <a href="#" onClick="closei()">

3ºcreamos la pagina de envio a bd y visualizacion de lo enviado con el form a esta pagina. La llamaremos: enviaprueba.php y es asi:
<?php
mysql_connect ("localhost","tuuser","tupassword");
mysql_select_db ("tubasedatos") or die ("Ha ocurrido un error al conectar a la bd");
$texto = $_POST["texto"];
$texto = htmlentities($texto, ENT_QUOTES);
$texto = str_replace("[b]","[b]", $texto);
$texto = str_replace("[/b]","[/b]", $texto);
$texto = str_replace("[i]","[i]", $texto);
$texto = str_replace("[/i]","[/i]", $texto);
$texto = str_replace("[rojo]","<font color=#FF0000>", $texto);
$texto = str_replace("\r\n", "
", $texto);
$texto = str_replace("[br]", "
", $texto);
$intro = mysql_query("INSERT INTO entrada (ver) 
values ('$texto')")or die('Error en tabla');
$intro = mysql_query ("SELECT * FROM entrada") ;
if ($row = mysql_fetch_array($intro)){

echo "<center> \n";
echo "<table border = '1'> \n";
echo "<tr> \n";
echo "<td>[b]ver[/b]</td> \n";
echo "</tr> \n";
do {
echo "<tr> \n";
echo "<td align='right'>".$row["ver"]."</td> \n";
echo "</tr> \n";
echo "</center> \n";
}
while ($row = mysql_fetch_array($intro));
echo "</table> \n";
}
else {
echo "¡ No se ha encontrado ningún registro !";
}
echo "</div> \n";
?>
Y listo de esta manera aparecerá el campo con el estilo y color que le hallamos definido.
En este aporte solo se muestra un color, pero se le pueden añadir tanto como quieras, al igual que los estilos, solo es cuestion de definirlo en "colores.js" y en los eventos "onclick ()".
FIN
Lo mejor de caerse al tropezar, es volverse a levantar.
Con dreamwever, al recuperar campos de una BD para que se muestren le puedes poner color, estilos, resaltar negritas etc ... al menos es la forma que yo uso y no tengo que tocar codigos para nada.
Alegrate, pues no todos tenemos la suerte de poseer tal privilegio.
Algunos como yo todo lo hacemos con 'HTML-KIT' y otros quizas con el 'BLOCK DE NOTAS' de guindous.
Lo mejor de caerse al tropezar, es volverse a levantar.
Ya esta activada. Dame un alegron
Lo mejor de caerse al tropezar, es volverse a levantar.