Foros del Web » Programando para Internet » PHP »

como es la forma correcta de programar?

Estas en el tema de como es la forma correcta de programar? en el foro de PHP en Foros del Web. Buenas amigos, quisiera por favor me podrian ayudar de como es la manera de programar lo siguiente: 1. Tengo una pagina que es el index ...
  #1 (permalink)  
Antiguo 29/05/2009, 15:56
Avatar de hoberwilly  
Fecha de Ingreso: julio-2008
Ubicación: Lima - Perú
Mensajes: 769
Antigüedad: 15 años, 10 meses
Puntos: 2
Pregunta como es la forma correcta de programar?

Buenas amigos, quisiera por favor me podrian ayudar de como es la manera de programar lo siguiente:
1. Tengo una pagina que es el index (usa include)
Código php:
Ver original
  1. <?php
  2. include("conec.php");
  3. $link = conectarse();
  4. $p = "";
  5. if(isset($_GET['p'])){
  6.     $p = $_GET['p'];
  7. }
  8. ?>
  9. <html>
  10. <head>
  11. </head>
  12. <body>
  13. <?php include("include/cabecera.php"); ?>
  14. <table>
  15. <tr>
  16.   <td valign="top"><br>
  17.   <?php
  18.   if($p==1){
  19.     include("include/pagina1.php");
  20.   }elseif($p==2){
  21.     include("include/pagina2.php");
  22.   }else{
  23.     include("include/nosotros.php");
  24.   }
  25.   ?>
  26.   </td>
  27. </tr>
  28. </table>
  29. </body>
  30. </html>
este recoje x la URL la variable p (1=Pagina1 , 2=Pagina2)

2. Este es una hoja que esta incluida en el index (cabecera.php)
Código php:
Ver original
  1. <table border="0" cellpadding="0" cellspacing="0" align="center" width="100%">
  2. <tr>
  3.  <td align="center" width="10%"><a href="index.php?p=1">PAGINA 1</a></td>
  4.   <td align="center" width="10%"><a href="index.php?p=2">PAGINA 2</a></td>
  5.  </tr>
  6. </table>
3. Y según el click, si clickeo en PAGINA 1 (de la cabecera) imprime pagina1.php:
Código php:
Ver original
  1. <?php
  2. $categoria=$_GET['p'];
  3. $_pagi_sql="SELECT ID,PROD,PREC FROM CATALOGO
  4.             WHERE EST='1' AND CATEGORIA='DAMA' AND STOCK>0
  5.             ORDER BY ID ASC";
  6. if(mysql_num_rows($_pagi_result)==0){                                              
  7.     echo "<h3>No hay productos</h3>";
  8. }else{
  9. ?>
  10. <table border="0" width="100%" height="100%" cellpadding="0" cellspacing="13" align="center" class="tablita">    
  11. <tr>
  12.   <td height="1">hay mas</td>
  13. </tr>
  14. </table>
  15. <?php
  16. }
  17. ?>
y, si clickeo en PAGINA 2 (de la cabecera) imprime pagina2.php:
Código php:
Ver original
  1. <?php
  2. $categoria=$_GET['p'];
  3. $_pagi_sql="SELECT ID,PROD,PREC FROM CATALOGO
  4.             WHERE EST='1' AND CATEG='VARON' AND STOCK>0
  5.             ORDER BY ID ASC";
  6. if(mysql_num_rows($_pagi_result)==0){                                              
  7.     echo "<h3>No hay productos</h3>";
  8. }else{
  9. ?>
  10. <table border="0" width="100%" height="100%" cellpadding="0" cellspacing="13" align="center" class="tablita">    
  11. <tr>
  12.   <td height="1">hay mas</td>
  13. </tr>
  14. </table>
  15. <?php
  16. }
  17. ?>
Si se han fijado SOLO HAY UNA DIFERENCIA entre pagina1.php y pagina2.php que esta en la sentencia SQL:
...WHERE EST='1' AND CATEGORIA='DAMA' ...
...WHERE EST='1' AND CATEGORIA='VARON' ...

Explico mi caso debido a que estas mismas paginas van incrementandose (pero solo con la unica diferencia de CATEGORIA) y veo k en el futuro para dar mantenimiento va causar verdaderos problemones.

Existe una manera optima como programarlos???Ayudenme...

Gracias de antemano,
  #2 (permalink)  
Antiguo 29/05/2009, 17:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda...sugerencias como es la forma correcta de programar?

si, la idea es separar mas el código... si ya notaste que solo hay un cambio, concentrate en programar la lógica para que ese cambio sea aplicado...

a eso se le llama redundancia, mientras menos tengas mas fácil te va a ir en el futuro...

pues si $p fuera $categoria ¿¿crees que sería menos código o no???
Código PHP:
$sql "SELECT * FROM tabla WHERE columna = '$p'"
o algo así, espero te sirva... suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 29/05/2009, 17:21
Avatar de jaao_death  
Fecha de Ingreso: abril-2009
Ubicación: Murcia/españa
Mensajes: 229
Antigüedad: 15 años
Puntos: 6
Respuesta: como es la forma correcta de programar?

la verdad me parece muy ambiguo eso que dices Hober, especifica más qué es lo que quieres hacer, por otro lado te recomiendo que utilices el api mysqli, hay que modernizarse, y que escapes la variable $p con mysqli::real_escape_string para que no te hagan una sql-inyection.
__________________
Mucha seguridad nunca es suficiente.... Por una red segura
El señor ilustre obscurece nuestras mentes
Usas Linux? http://www.dudalibre.com/gnulinuxcounter
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 01:55.