Foros del Web » Programando para Internet » PHP »

variable indevinida

Estas en el tema de variable indevinida en el foro de PHP en Foros del Web. Hola a todos, estoy relizando un index.php, un molde1.php (este contiene la estructura de divs) y pretende tener la estructura de contenidos almacenadas en index.php ...
  #1 (permalink)  
Antiguo 08/12/2008, 06:26
Avatar de anticic  
Fecha de Ingreso: noviembre-2008
Mensajes: 21
Antigüedad: 16 años
Puntos: 0
variable indevinida

Hola a todos,
estoy relizando un index.php, un molde1.php (este contiene la estructura de divs) y pretende tener la estructura de contenidos almacenadas en index.php mediante un vector, el asunto es que cuando hago el include en index.php no me reconoce el vector invocado en molde1.php.
El error que tira es: Undefined variable: vector in C:\Archivos de programa\EasyPHP\www\Pruebas\eje10\eje10-b\template1\molde1.php on line 27

A continuación paso el código de los 3 archivos a ver si alguien puede ayudarme.
index.php
Código php:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3.  
  4. <head>
  5.     <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
  6.     <meta name="author" content="">
  7.     <?php
  8.     if (isset($_GET["estilo"]))
  9.     {
  10.         $n= $_GET["estilo"];
  11.         switch ($n)
  12.         {
  13.         case "1": case "2": case "3":
  14.         $ref="href=template$n/estilo$n.css";
  15.         include ("template$n/molde$n");
  16.         break;
  17.         default:
  18.           echo('ha ocurrido un error');
  19.         break;
  20.         }
  21.     }
  22.     else
  23.     {
  24.         $ref="href= \"template1/estilo1.css\"";
  25.         include "template1/molde1.php";
  26.     }
  27.    
  28.     ?>
  29.    
  30.     <link rel="stylesheet" type="text/css" <?php echo ($ref)?>>
  31.         <title>Eleccion templates noticias</title>
  32. </head>
  33.  
  34. <body>
  35. <form action="" method="get">
  36. Ingrese el estilo que prefiera<br>
  37. <input type="radio" name="estilo" value="1">A tres columnas<br>
  38. <input type="radio" name="estilo" value="2">A dos columnas<br>
  39. <input type="radio" name="estilo" value="3">Colorido<br>
  40. <input type="submit" value="Elegir">
  41. </form>
  42.  
  43. <?php
  44. $vector["encabezado"]="ULTIMAS NOTICIAS";
  45.  
  46. $vector["antartida"]="Continúa encallado en la Antártida un crucero de lujo con 122 personas a bordo";
  47. $vector["cuerpoAntartida"]= "El crucero Ushuaia, con 89 personas y 33 tripulantes, se encuentra varado desde ayer a la tarde cerca de la Antártida, con entrada mínima de agua y pérdida de combustible, según informó la Armada Argentina. El capitán, Jorge Aldegueri, dijo a Clarín.com que los pasajeros y tripulantes no corren peligro.";
  48.  
  49. $vector["patriarca"]="Murió el patriarca de la Iglesia Ortodoxa Rusa ";
  50. $vector["cuerpoPatriarca"]="Alexis II, cercano del actual primer ministro y ex presidente Vladimir Putin, encabezaba desde 1990 la Iglesia Ortodoxa Rusa . Durante su patriarcado, mantuvo momentos de tensión con el Vaticano, y en una oportunidad se negó a recibir al Papa Juan Pablo II al argumentar que se intentaría promover la fe católica en el país.";
  51.  
  52.  
  53. $vector["trenes"]= "Demoras en la línea Roca" ;
  54. $vector["cuerpoTrenes"]="Los servicios del ex ferrocarril Roca se prestaba con demoras de hasta 25 minutos por fallas técnicas registrados en la estación cabecera de Plaza Constitución. Los retrasos se registraban esta mañana en todos los ramales de de la empresa Unidad de Gestión Operativa Ferroviaria de Emergencias (UGOFE), línea Roca, a cargo del funcionamiento del ex Ferrocarril Roca.";
  55.  
  56. $vector["asueto"]="Aclaran que el asueto por las Fiestas no rige para los bancos";
  57. $vector["cuerpoAsueto"]="Lo informó esta tarde el Ministerio del Interior. De esta forma, el beneficio sólo alcanzará a los trabajadores de la administración pública nacional y de la provincia de Buenos Aires, que descansarán el 26 de diciembre y el 2 de enero.";
  58.  
  59. $vector["madonna"]="Una multitud deliró con Madonna ";
  60. $vector["cuerpoMadonna"]="Tras quince años sin ofrecer un show aquí y ocho sin pisar suelo argentino, anoche Madonna volvió a presentarse en Buenos Aires. La Reina del Pop cantó ante un River colmado luego de que la fecha del miércoles, la primera del capítulo argentino del \"Sticky & Sweet Tour\", fuera pospuesta. Unos 50.000 fanáticos corearon las canciones en las dos horas de un concierto que ostentó un despliegue escénico impactante: bailarines, escenografía, luces y hasta un Rolls Royce en escena. ";
  61.  
  62.    
  63. ?>
  64.  
  65. </body>
  66. </html>
molde1.php
Código php:
Ver original
  1. <div id="encabezado">
  2. <h1>Banner de publicidad del sitio</h1>
  3. </div>
  4. <div id="contenidoTotal">
  5.     <div id="contenColumns">
  6.         <div id="botonera">
  7.             <ul>
  8.                     <li><a href="#"><?php echo $vector["antartida"]?></a></li>
  9.                     <li><a href="#"><?php $vector["patriarca"]?></a></li>
  10.                     <li><a href="#"><?php $vector["trenes"]?></a></li>
  11.                     <li><a href="#"><?php $vector["asueto"]?></a></li>
  12.                     <li><a href="#"><?php $vector["madonna"]?></a></li>
  13.             </ul>
  14.         </div>
  15.     <div id="columDer">
  16.         <h3>Find out more</h3>
  17.         <p>
  18.             Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet.
  19.         </p>
  20.     </div>
  21.  
  22.        
  23.         <div id="contenido">
  24.             <h2><?php echo $vector["encabezado"] ?></h2>
  25.                 <p>contenidos</p>
  26.                
  27.  
  28.  
  29.         </div>
  30.         <div id="cleardiv"></div>
  31.     </div>
  32. </div>
  33. <div id="pie">
  34.     <h3>La noticia al instante</h3>
  35. </div>
estilo1.css

Código php:
Ver original
  1. /*body
  2. {
  3. margin: 0;
  4. padding: 0;
  5. font-size: 90%;
  6. color: #000;
  7. background-color: #fff;
  8. }*/
  9. {
  10. color: #036;
  11. }
  12.  
  13. a:visited
  14. {
  15. color: #066;
  16. }
  17.  
  18. a:hover ,a:active
  19. {
  20. color: #fff;
  21. background-color: #036;
  22. }
  23. div#encabezado
  24. {
  25. color: #fff;
  26. background-color: #333;
  27. border-bottom: 1px solid #000;
  28. }
  29.  
  30. div#encabezado h1
  31. {
  32. margin: 0;
  33. padding: .3em 0 .3em .5em;
  34. }
  35.  
  36. div#contenidoTotal
  37. {
  38. background-image: url(imagenes/nav_col_base.jpg);
  39. background-repeat: repeat-y;
  40. }
  41.  
  42. div#contenColumns
  43. {
  44. background-image: url(imagenes/more_col_base.jpg);
  45. background-repeat: repeat-y;
  46. background-position: right;
  47. }
  48.  
  49. div#botonera
  50. {
  51. float: left;
  52. width: 150px;
  53. padding-top: 2em;
  54. }
  55.  
  56. div#botonera ul
  57. {
  58. list-style-type: none;
  59. padding: 0;
  60. margin: 0;
  61.  
  62. }
  63.  
  64. div#botonera ul li
  65. {
  66.      margin-top: 4px;
  67. }
  68.  
  69. #botonera ul li a
  70. {
  71. display: block;
  72. width: 135px;
  73. padding: 3px 5px 3px 10px;
  74. text-decoration: none;
  75. color: #000;
  76. background-image: url(imagenes/nav_base.jpg);
  77. background-repeat: repeat-y;
  78. }
  79.  
  80. #botonera ul li a:hover
  81. {
  82. color: #fff;
  83. background-color: #ccc;
  84. background-image: url(imagenes/nav_base2.jpg);
  85. background-repeat: repeat-y;
  86. }
  87.  
  88. div#columDer
  89. {
  90. float: right;
  91. width: 160px;
  92. margin: 0;
  93. padding: 2em 10px 0 0;
  94. color: #fff;
  95. }
  96.        
  97. div#columDer h3
  98. {
  99. margin-top: 0;
  100. color: #fff;
  101. padding: .2em;
  102. background-image: url(imagenes/more_base.jpg);
  103. background-position: right;
  104. background-repeat: repeat-y;
  105. }
  106.  
  107. div#contenido
  108. {
  109. margin-left: 190px;
  110. margin-right: 200px;
  111. line-height: 150%;
  112. }
  113. div#contenido h2
  114. {
  115. font-size: 2em;
  116. color: #036;
  117. margin: 0;
  118. padding-top: 1em;
  119. font-weight: normal;
  120. }
  121.  
  122. #cleardiv
  123. {
  124. clear: both;
  125. height: 1em;
  126. }
  127. div#pie
  128. {
  129. color: #fff;
  130. background-color: #333;
  131. border-top: 2px solid #000;
  132. }
  133. div#pie h3
  134. {
  135. margin: 0;
  136. padding: .3em 0 .3em .5em;
  137. }
  138. /*div#pie ul
  139. {
  140. padding: 0;
  141. margin: 0;
  142. list-style-type: none;
  143. }
  144. div#pie li
  145. {
  146. display: inline;
  147. margin-right: 1em;
  148. }

En realidad no que estoy esperando es que muestre el contenido de un vector asociativo el el "molde" mediante un echo, ya que no se me permite realizar echos en el index.

el css es una plantilla y no creo que tenga nada que ver en el problema.
Gracias nuevamente.
anticic
  #2 (permalink)  
Antiguo 08/12/2008, 06:40
Avatar de anticic  
Fecha de Ingreso: noviembre-2008
Mensajes: 21
Antigüedad: 16 años
Puntos: 0
Respuesta: variable indevinida

Perdón, perdón, y nuevamente perdón.

Lo resolví, es que me parecía casi imposible tener tanto código "arriba de todo" (ja ja) no estaba definida, simplemente porque "aún" no estaba definida.

Gracias igualmente
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 21:15.