Ver Mensaje Individual
  #3 (permalink)  
Antiguo 03/08/2009, 19:16
jonatanc
 
Fecha de Ingreso: enero-2009
Mensajes: 408
Antigüedad: 15 años, 3 meses
Puntos: 14
Respuesta: Servidor Local PHP/MySQL

Estimado veamos paso a paso los errores...

1) El notice que figura en su php es un error menor , lo que le indica que no existe el componente (indice) id en su arreglo asociativo.

2) Mysql_Connect fallá debido a que usted debe configurar en forma correcta los parametros de conexion (servidor,username,pass) a su servidor de base de datos local.

3) El error de mysql_select_db esta estrechamente vinculado con el error anterior ya que la sintaxis de la función mysql_select_db es la siguiente:

Código php:
Ver original
  1. <?php
  2. mysql_select_db('tabla',$link);
  3. ?>

En donde $link debe ser un recurso de conexion mysql valido , en resumidas cuentas y pasado al castellano al no poder levantar la conexion mysql tampoco podrá seleccionar una tabla sql , o realizar ninguna operación en donde intervenga la variable que posee el recurso de conexion mysql valido.

4) No tiene nada que ver que en su tabla no existan los datos de nombre usuario y password como campos , es totalmente aparte y no tiene ninguna relación dicha faltante con su error , solamente para evitar el error de que no se puede conectar debe realizar una correcta configuración de los parametros de conexion al momento de invocar la función mysql_connect.

5) Respecto al cambio realizado en su fichero php.ini le recomiendo desactivar las variables globales ya que son un riesgo para la seguridad y por otro lado llevan al programador a caer en el vicio de emplearlas y recuerde que una variable global lleva más tiempo y mas consumo de memoria y procesador en declarse , asignarse y operaciones de lecto-escritura , con lo cual no le conviene en absoluto.

6) Respecto a tu codigo de prueba , el error que le da es el undefined index , que vuelvo a repetirle sucede cuando usted quiere acceder a un campo de un arreglo mediante un indice inexistente , recuerde que un arreglo es una colección de datos indexada heterogenea en php , con lo cual si dicho indice no existe quiere decir que dicho valor no podrá ser accedido , es un poco de logica cotidiana dicho error , mi solución a su problema seria la siguiente:

prueba.php

Código php:
Ver original
  1. <?php
  2. if(isset($_POST['nombre')){
  3. $edad = $_POST["nombre"];
  4. echo "Tu edad: $nombre<p>";
  5. }else{
  6. ?>
  7. <html>
  8. <head>
  9. <title>Formulario</title>
  10. </head>
  11. <body>
  12. <form name="demo" action="prueba.php" method="POST">
  13. <input type="text" name="nombre" value="Inserte su nombre"/>
  14. </form>
  15. </body>
  16. </html>
  17. <?php
  18. }
  19. ?>

Le explico en resumidas cuentas , mediante la invocación a la función isset , compruebo si el campo existe dentro de arreglo asociativo del post , es decir si esta declarado , si esta declarado quiere decir que envie los datos , entonces mediante el uso de if muestro el nombre , si no existe quiere decir que no envie los datos aún , por lo tanto muestro el formulario.

Espero que mi explicación le haya sido util.

Saludos!

Última edición por jonatanc; 03/08/2009 a las 19:21