PHP - Ayuda Script:Formulario-Estilo

   
Vista:
Imágen de perfil de Hector

Ayuda Script:Formulario-Estilo

Publicado por Hector (2 intervenciones) el 02/01/2014 15:35:01
Hola a tod@s, tengo un problema en un script que no acaba de salirme correctamente, el script consiste mediante un formulario presentar un texto en pantalla con la opción de editarlo y modificar el formato de letra utilizando los estilos.

El resultado del script vendría a ser este:




Para ello utilizo el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<head>
<title>Ejercicio_3</title>
</head>
<body>
<?php
if (isset($_REQUEST['aceptar']))
{
$marcado=$_REQUEST['marcado'];
$texto=$_REQUEST['texto'];
} else
{
$texto='Lorem Ipsum Dolor Sit Amet';
$marcado=$texto;
}
 echo "<p style='font-weight:$marcado; font-style:$marcado; text-decoration:$marcado'>$texto</p>";
 
?>
<hr>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
Introduce el texto a mostrar:
<input type="text" name="texto" value="<?php echo $texto ?>">
<br>
Estilo del texto:
<input type="checkbox" name="marcado" value="bold" <?php if ($marcado=='bold') echo 'checked' ?> > Negrita
<input type="checkbox" name="marcado" value="italic" <?php if ($marcado=='italic') echo 'checked' ?> > Cursiva
<input type="checkbox" name="marcado" value="underline" <?php if ($marcado=='underline') echo 'checked' ?> > Subrayado
<br>
<input type="submit" name="aceptar" value="Aceptar">
</form>
</body>
</html>



Con este código consigo que al seleccionar cada una de las opciones se muestren en sus respectivos estilos, pero se intento seleccionar las tres a la vez o más de una opción (negrita, cursiva, subrayado) no me funciona...

Negrita







Cursiva






Subrayado





Como se puede apreciar sale correctamente pero si intento seleccionar más de una opción no funciona bien..el script simplemente coge la última opción señalada y desmarca la otra opción marcada

Tengo que decir que llevo muy poco tiempo en php, recién estoy empezando..

Saludos ...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Ayuda Script:Formulario-Estilo

Publicado por xve (5519 intervenciones) el 02/01/2014 16:54:50
Hola Hector, el problema creo que esta, en que en todos los input utilizas el mismo nombre, por lo que siempre te coje el ultimo valor seleccionado.

Revisa este código haber si te sirve:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<html>
<head>
<title>Ejercicio_3</title>
</head>
<body>
    <?php
    $style="";
    if(isset($_POST["bold"]))
    {
        $style.="font-weight:bold;";
    }
    if(isset($_POST["italic"]))
    {
        $style.="font-style:italic;";
    }
    if(isset($_POST["underline"]))
    {
        $style.="text-decoration:underline;";
    }
 
    if(!isset($_POST["texto"]))
    {
        $texto=$_REQUEST['texto'];
    }else{
        $texto='Lorem Ipsum Dolor Sit Amet';
    }
    echo "<p style='".$style."'>$texto</p>";
    ?>
    <hr>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
        Introduce el texto a mostrar:
        <input type="text" name="texto" value="<?php echo $texto ?>">
        <br>
        Estilo del texto:
        <input type="checkbox" name="bold" value="1" <?php echo (isset($_POST["bold"])?"checked":"") ?> > Negrita
        <input type="checkbox" name="italic" value="1" <?php echo (isset($_POST["italic"])?"checked":"") ?> > Cursiva
        <input type="checkbox" name="underline" value="1" <?php echo (isset($_POST["underline"])?"checked":"") ?> > Subrayado
        <br>
        <input type="submit" name="aceptar" value="Aceptar">
    </form>
</body>
</html>

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hector

Ayuda Script:Formulario-Estilo

Publicado por Hector (2 intervenciones) el 02/01/2014 18:31:09
Hola xve, gracias por la ayuda, efectivamente ahora sale correctamente, el código que has proporcionado tiene un "minúsculo" error, que no impide la ejecución del script ...

El signo exclamativo de negación que hay en esta línea:





Esto hace que al ejecutar el script obtengamos el siguiente error que no impide la ejecución correcta del script..




Si quitamos el signo de negación(!) se ejecuta correctamente:




Saludos y muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Ayuda Script:Formulario-Estilo

Publicado por xve (5519 intervenciones) el 02/01/2014 20:43:22
Hola Hector, tienes toda la razón... gracias por comentarlo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar