Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con PHP (echo)

Estas en el tema de Problema con PHP (echo) en el foro de PHP en Foros del Web. Hola, buenas a todos, quiero contarles que tengo un problema con mis archivos PHP, bueno, estos programas los probé en el localhost con MySQL, ahí ...
  #1 (permalink)  
Antiguo 09/05/2015, 01:19
 
Fecha de Ingreso: mayo-2015
Ubicación: Hermosillo, Sonora, México
Mensajes: 3
Antigüedad: 8 años, 11 meses
Puntos: 0
Pregunta Problema con PHP (echo)

Hola, buenas a todos, quiero contarles que tengo un problema con mis archivos PHP, bueno, estos programas los probé en el localhost con MySQL, ahí todo perfecto, muestra lo del echo y todo... (estoy usando dos archivos, uno html y otro php que es el que hace la acción) pero a la hora de subirlo a un hosting, ya no muestra nada de lo que debe de contener el echo, pensé que era un problema del hosting pero ya he probado en varios y no sale en ningún lado, no sé cuál pueda ser el problema si pudieran ayudarme...

Este es el archivo HTML:

temperatura.html

<html>
<head>
<meta charset="UTF-8">
<title>Temperaturas</title>

</head>

<body>

<form name="temp" action="temp.php" method="POST">
<center>
<fieldset>
<legend>Convertidor</legend>
<h1>Grados:</h1><input type="text" name="g" class="campo"></br>
</br>
</br>
</br>

<table>
<tr>
<td>
<input type="radio" name="grados" value="f1" checked>Fahrenheit a Centígrados</br>
<input type="radio" name="grados" value="f2" checked>Fahrenheit a Kelvin</br>
<input type="radio" name="grados" value="c1" checked>Centígrados a Fahrenheit</br>
<input type="radio" name="grados" value="c2" checked>Centígrados a Kelvin</br>
<input type="radio" name="grados" value="k1" checked>Kelvin a Centígrados</br>
<input type="radio" name="grados" value="k2" checked>Kelvin a Fahrenheit</br>
</td>



</tr>
</table>

</br>
<input type="submit" name="bot" value="Convertir" class="bot"></br>


</fieldset>
</center>
</form>

</body>

</html>

AHORA EL ARCHIVO PHP:

temp.php

<html>

<head>
<meta charset="UTF-8">
<title>Conversión</title>
</head>

<body>

<center>

<?php
switch ($grados) {
case 'f1':
$gfctotal = ($_POST[g]-32) / 1.8;
echo "$_POST[g] º grados Fahrenheit son $gfctotal º Centígrados";
break;
case 'f2':
$gfktotal = ($_POST[g]-32) / (1.8000) + (273.15);
echo "$_POST[g] º grados Fahrenheit son $gfktotal Kelvin";
break;
case 'c1':
$gcftotal = ($_POST[g] * 1.8) + 32;
echo "$$_POST[g] º grados Centígrados son $gcftotal º Fahrenheit";
break;
case 'c2':
$gcktotal = $$_POST[g] + 273;
echo "$_POST[g] º grados Centígrados son $gcktotal º Kelvin";
break;
case 'k1':
$gkctotal= $_POST[g] - 273;
echo "$_POST[g] º grados Kelvin son $gkctotal º Centígrados";
break;
case 'k2':
$gkftotal= ($_POST[g]-273.15) * (1.8000) + 32;
echo "$_POST[g] º grados Kelvin $gkftotal º Fahrenheit";
break;


}


?>
</font>
</center>

</body>
</html>


La verdad es que ya intenté de todo y no sé cuál pueda ser el problema. Gracias de antemano. Espero y puedan ayudarme.
  #2 (permalink)  
Antiguo 09/05/2015, 06:09
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 1 mes
Puntos: 1146
Respuesta: Problema con PHP (echo)

que yo sepa cuando el index de un array es alfanumerico debes meterlo entre comillas

$_POST[g] -> $_POST["g"]

Fuera de eso, ya probaste activar los reportes de errores para depurar tu código?
  #3 (permalink)  
Antiguo 13/05/2015, 22:59
 
Fecha de Ingreso: mayo-2015
Ubicación: Hermosillo, Sonora, México
Mensajes: 3
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Problema con PHP (echo)

Gracias Arturo, he probado lo que mas dicho y sigue igual, pero igual te agradezco tu tiempo y perdona mi tardanza en responder. Muchas gracias.
  #4 (permalink)  
Antiguo 14/05/2015, 03:12
Avatar de jpint  
Fecha de Ingreso: junio-2012
Ubicación: Ciudad Real - España
Mensajes: 97
Antigüedad: 11 años, 10 meses
Puntos: 12
Respuesta: Problema con PHP (echo)

Ademas de lo que te comentaba ArturoGallegos, tienes más errores de sintaxis en el php.

La variable grados no la has inicializado antes de usarla en el switch, por lo que entiendo que lo que quieres realmente usar es $_POST["grados"].

Además en el case 'c1' y 'c2' se te han colado $$.

Te dejo el código como yo lo dejaría, un poco más limpio el código.

Código PHP:
<?php

$grados 
$_POST["grados"];
$g $_POST["g"];

switch (
$grados) {
    case 
'f1':
        
$gfctotal = ($g 32) / 1.8;
        echo 
$g." º grados Fahrenheit son ".$gkftotal." º Centígrados";
        break;
    case 
'f2':
        
$gfktotal = ($g 32) / (1.8000) + (273.15);
        echo 
$g." º grados Fahrenheit son ".$gkftotal." Kelvin";
        break;
    case 
'c1':
        
$gcftotal = ($g 1.8) + 32;
        echo 
$g." º grados Centígrados son ".$gkftotal." º Fahrenheit";
        break;
    case 
'c2':
        
$gcktotal $g 273;
        echo 
$g." º grados Centígrados son ".$gkftotal." º Kelvin";
        break;
    case 
'k1':
        
$gkctotal$g 273;
        echo 
$g." º grados Kelvin son ".$gkftotal." º Centígrados";
        break;
    case 
'k2':
        
$gkftotal= ($g 273.15) * (1.8000) + 32;
        echo 
$g." º grados Kelvin ".$gkftotal." º Fahrenheit";
        break;
}
?>
  #5 (permalink)  
Antiguo 15/05/2015, 16:15
 
Fecha de Ingreso: mayo-2015
Ubicación: Hermosillo, Sonora, México
Mensajes: 3
Antigüedad: 8 años, 11 meses
Puntos: 0
Respuesta: Problema con PHP (echo)

Efectivamente, era eso, muchísimas gracias, no sé como agradecertelo. Perdona mi torpeza, pero apenas me voy iniciando en esto del PHP, en serio, muchísimas gracias.

Etiquetas: echo, muestra, nada
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 11:09.