Foro de programación en PHP
Ayuda novato PHP
| Autor: locmec Publicado: 11-10-2009 04:24 PM |
|
|
Hola buenas Mi problema es que me he liado a desarrollar un pequeño script para un amigo sin tener ni idea de programación en PHP y ahora pido ayuda para salir de este apuro. El tema es que en principio parece estar medio hecho, pero me queda rizar el rizo, y ya llevo muchos cabezazos, de ahí que pido si alguien me puede hechar una mano puesto que me he quedado estancado. El tema es que antes de pasarlo a PHP hice el script en Visual Basic para ver si me podia guiar un poco, pero claro, no me aclaro. En principio lo que me salio en PHP fue esto <? if (isset($_POST['Enviado'])) { $Enviado = $_POST['Enviado']; } else{ $Enviado= "False"; } if ($Enviado == "True") { // tomo las variables del formulario mediante el método usado por el mismo $c3 = $_POST[M3Camara]; $c1=700; $c2=30; $c4=1; $c5=10000; $c6 = (($c2 - $c1)/($c5 - $c4)); $c7 = ($c3 - $c4); $c8 = ($c6 * $c7); $c9 = (($c1 + $c8) * $c3); $resultado= $c9; $Enviado == "False"; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Calculadora Peri</title> </head> <body> <form action="" name="form1" method="post"> <input name="M3Camara" size="17" type="text"/> <br/> <input value="Calcular" name="Calcular" type="submit"/> <br/> <input type="hidden" name="Enviado" value="True" /> <br/> </form> <? // impresión del resultado de la operación echo "$resultado"; ?> </body> </html> pero se trata de una interpolación lineal cuando yo la quiero hacer parabólica, os pongo el programa que desarrollé en VB6 y funciona perfectamente: num% = Text1.Text If num% < "2" Then c = "700" b = (num% * c) a$ = b & " €" Label2.Caption = a$ GoTo fin ElseIf num% <= "5" And num% >= "2" Then c1 = "700": c2 = "600": c4 = "2": c5 = "5" ElseIf num% >= "5" And num% <= "10" Then c1 = "600": c2 = "500": c4 = "5": c5 = "10" ElseIf num% >= "10" And num% <= "20" Then c1 = "500": c2 = "400": c4 = "10": c5 = "20" ElseIf num% >= "20" And num% <= "30" Then c1 = "400": c2 = "300": c4 = "20": c5 = "30" ElseIf num% >= "30" And num% <= "50" Then c1 = "300": c2 = "250": c4 = "30": c5 = "50" ElseIf num% >= "50" And num% <= "100" Then c1 = "250": c2 = "200": c4 = "50": c5 = "100" ElseIf num% >= "100" And num% <= "150" Then c1 = "200": c2 = "180": c4 = "100": c5 = "150" ElseIf num% >= "150" And num% <= "200" Then c1 = "180": c2 = "150": c4 = "150": c5 = "200" ElseIf num% >= "200" And num% <= "400" Then c1 = "150": c2 = "120": c4 = "200": c5 = "400" ElseIf num% >= "400" And num% <= "800" Then c1 = "120": c2 = "100": c4 = "400": c5 = "800" ElseIf num% >= "800" And num% <= "1200" Then c1 = "100": c2 = "90": c4 = "800": c5 = "1200" ElseIf num% >= "1200" And num% <= "2500" Then c1 = "70": c2 = "50": c4 = "1200": c5 = "2500" ElseIf num% >= "2500" And num% <= "10000" Then c1 = "50": c2 = "30": c4 = "2500": c5 = "10000" ElseIf num% >= "10000" Then c = "30" b = (num% * c) a$ = b & " €" Label2.Caption = a$ GoTo fin End If c3 = num% c6 = ((c2 - c1) / (c5 - c4)) c7 = (c3 - c4) c8 = (c6 * c7) c9 = ((c1 + c8) * c3) a$ = c9 & " €" Label2.Caption = a$ fin: no se si alguien podria hecharme una mano a pasar el código VB6 a PHP. Gracias de antemano Un saludo |
|
| Autor: dcreate Publicado: 14-10-2009 08:56 AM |
|
| espero esto te sirva, yo lo hago en ds paginas, unadonde mandas lo datos y otra donde los procesas. index.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Documento sin título</title> <script> function validar(formulario) { if(formulario.numero.value=='') { alert("falta numero"); formulario.numero.focus(); return false; } return true; } </script> </head> <body> <form onsubmit="return validar(this)" id="form1" name="form1" method="post" action="procesar.php"> <label>numero: <input name="numero" type="text" id="numero" /> </label> <p> <label> <input type="submit" name="Submit" value="Enviar" /> </label> </p> <p> </p> </form> </body> </html> procesar.php <?php $numero=$_POST['numero']; if($numero<2) { $c=700; $b=$numero*$c; $a=$b." €"; echo $a; exit; } else if($numero<=5 && $numero>=2){ $c1 = 700; $c2 = 600; $c4 = 2; $c5 = 5; } else if($numero >= 5 && $numero <= 10 ){ $c1 = 600; $c2 = 500; $c4 = 5; $c5 = 10;} else if($numero >= 10 && $numero <= 20){ $c1 = 500; $c2 = 400; $c4 = 10; $c5 = 20;} else if( $numero >= 20 and $numero <= 30) { $c1 = 400; $c2 = 300; $c4 = 20; $c5 = 30;} else if( $numero >= 30 and $numero <= 50) { $c1 = 300; $c2 = 250; $c4 = 30; $c5 = 50;} else if( $numero >= 50 and $numero <= 100) { $c1 = 250; $c2 = 200; $c4 = 50; $c5 = 100;} else if( $numero >= 100 and $numero <= 150) { $c1 = 200; $c2 = 180; $c4 = 100; $c5 = 150;} else if( $numero >= 150 and $numero <= 200) { $c1 = 180; $c2 = 150; $c4 = 150; $c5 = 200;} else if( $numero >= 200 and $numero <= 400) { $c1 = 150; $c2 = 120; $c4 = 200; $c5 = 400;} else if( $numero >= 400 and $numero <= 800) { $c1 = 120; $c2 = 100; $c4 = 400; $c5 = 800;} else if( $numero >= 800 and $numero <= 1200) { $c1 = 100; $c2 = 90; $c4 = 800; $c5 = 1200;} else if( $numero >= 1200 and $numero <= 2500) { $c1 = 70; $c2 = 50; $c4 = 1200; $c5 = 2500;} else if( $numero >= 2500 and $numero <= 10000) { $c1 = 50; $c2 = 30; $c4 = 2500; $c5 = 10000;} else if( $numero >= 10000) { $c = 30; $b = ($numero * $c); $a = $b . " €"; echo $a; exit; } $c3 = $numero; $c6 = (($c2 - $c1) / ($c5 - $c4)); $c7 = ($c3 - $c4); $c8 = ($c6 * $c7); $c9 = (($c1 + $c8) * $c3); $a = $c9 . " €"; echo $a; ?> |
|

