no puedo leer datos desde dbase
¿cual sera el problema?
¿sera problema de configuracion?
| |||
Por sér .. puede ser de cualquier cosa .. Pero lo que no somos es "adivinos" .. así que por favor indica algo más de datos de tus condiciones: 1) Usas un servicio de hosting (de pago? .. gratuito? ..) o tu própio servidor?. 2) Código que usas. 3) Mensajes de error si los ves. No está de más comentar que Versión de PHP usas . .bajo que Sistema Operativo de tu servidor ... Un saludo, |
| |||
el codigo <table align="center" > <form name="anadir" method="post" action="8.php"> <tr> <td width="275" > <div align="center"><font face="Arial, Helvetica, sans-serif"size="3"> Introduce el codigo: </font><br> <input type="text" name="codigo" size="20" maxlength="30"> </div> </td> <td width="275"> <div align="center"> <font face="Arial, Helvetica, sans-serif"size="3"> Introduce las nombre:</font> <br> <input type="text" name="nombre" size="10" maxlength="30"> </div> </td> </tr> <tr> <td colspan="2"> <div align="center"> <input type="submit" value="Enviar" name="envia"> </div> </td> </tr> </form> </table> <? if($envia!="" && $codigo!="" && $nombre!="") { $sMicodigo=$codigo; $sMinombre=$nombre; $envia=""; $codigo=""; $nombre=""; $basedatos = "clientes.dbf"; $result = dbase_open ( $basedatos, 2 ); if ( !$result ) echo ("No abrió la base de datos"); else { $ultimo = dbase_numrecords($result); $num_campos=dbase_numfields($result); if ($ultimo && $num_campos) { print("<div align='center'>"); echo("El último registro es.... :".$ultimo."<br>"); print("El número de campos es.... :".$num_campos."<br>"); print("<strong>Vamos a introducir los elementos,</strong>"); print("</div>"); } $inserta = array ($sMicodigo , $sMinombre); echo"<div align='center'>"; print("<H1>".$inserta[1]." y ".$inserta[0]."</H1>"); echo"</div>"; if(!dbase_add_record ( $result , array_values($inserta) )) print("<strong>No pudo reeemplazar el registro </strong>"); $close= dbase_close ( $result ); } } $sMicodigo=""; $sMinombre=""; $inserta = array ($sMicodigo , $sMinombre); ?> |
| |||
Insisto una vez más .. Te solicitaba un par de temas más: 1) y 3) Ahí tienes un pequeño control de como se ejecuta tu código . .por ejemplo avisos de que "no se conectó con tu BD" .. etc. No está de más que indiques que "sucede" cuando ejecutas tu código .. por lo menos para ver si "conectastes" a tu BD .. Estado de las variables que vas obteniendo a lo largo de la ejecución de ese código .. Por ejemplo: Código PHP: |
| |||
tengo este codigo en la pagina 7.php <table align="center" > <form name="anadir" method="post" action="8.php"> <tr> <td width="275" > <div align="center"><font face="Arial, Helvetica, sans-serif"size="3"> Introduce el codigo: </font><br> <input type="text" name="codigo" size="20" maxlength="30"> </div> </td> <td width="275"> <div align="center"> <font face="Arial, Helvetica, sans-serif"size="3"> Introduce las nombre:</font> <br> <input type="text" name="nombre" size="10" maxlength="30"> </div> </td> </tr> <tr> <td colspan="2"> <div align="center"> <input type="submit" value="Enviar" name="envia"> </div> </td> </tr> </form> </table> |
| |||
y este en la pagina 8.php <? if($envia!="" && $codigo!="" && $nombre!="") { $sMicodigo=$codigo; $sMinombre=$nombre; $envia=""; $codigo=""; $nombre=""; $basedatos = "clientes.dbf"; $result = dbase_open ( $basedatos, 2 ); if ( !$result ) echo ("No abrió la base de datos"); else { $ultimo = dbase_numrecords($result); $num_campos = dbase_numfields($result); if ($ultimo && $num_campos) { print("<div align='center'>"); echo("El último registro es.... :".$ultimo."<br>"); print("El número de campos es.... :".$num_campos."<br>"); print("<strong>Vamos a introducir los elementos,</strong>"); print("</div>"); } $inserta = array ($sMicodigo , $sMinombre); echo"<div align='center'>"; print("<H1>".$inserta[1]." y ".$inserta[0]."</H1>"); echo"</div>"; if(!dbase_add_record ( $result , array_values($inserta) )) print("<strong>No pudo reeemplazar el registro </strong>"); $close= dbase_close ( $result ); } } $sMicodigo=""; $sMinombre=""; $inserta = array ($sMicodigo , $sMinombre); ?> llega el enlace pero no me arroja nada |
| |||
tengo este codigo pagina 7.php envia los datos pero no me arroja ningun mensaje ni menos se agrega en la tabla clientes.dbf <table align="center" > <form name="anadir" method="post" action="7.php"> <tr> <td width="275" > <div align="center"><font face="Arial, Helvetica, sans-serif"size="3"> Introduce el codigo: </font><br> <input type="text" name="codigo" size="20" maxlength="30"> </div> </td> <td width="275"> <div align="center"> <font face="Arial, Helvetica, sans-serif"size="3"> Introduce el nombre:</font> <br> <input type="text" name="nombre" size="10" maxlength="30"> </div> </td> </tr> <tr> <td colspan="2"> <div align="center"> <input type="submit" value="Enviar" name="envia"> </div> </td> </tr> </form> </table> <? if($envia!="" && $codigo!="" && $nombre!="") { $sMicodigo=$codigo; $sMinombre=$nombre; $envia=""; $codigo=""; $nombre=""; $basedatos = "clientes.dbf"; $result = dbase_open ( $basedatos, 2 ); if ( !$result ) echo ("No abrió la base de datos"); else { $ultimo = dbase_numrecords($result); $num_campos = dbase_numfields($result); if ($ultimo && $num_campos) { print("<div align='center'>"); echo("El último registro es.... :".$ultimo."<br>"); print("El número de campos es.... :".$num_campos."<br>"); print("<strong>Vamos a introducir los elementos,</strong>"); print("</div>"); } $inserta = array ($sMicodigo , $sMinombre); echo"<div align='center'>"; print("<H1>".$inserta[1]." y ".$inserta[0]."</H1>"); echo"</div>"; if(!dbase_add_record ( $result , array_values($inserta) )) print("<strong>No pudo reeemplazar el registro </strong>"); $close= dbase_close ( $result ); } } $sMicodigo=""; $sMinombre=""; $inserta = array ($sMicodigo , $sMinombre); ?> |
| ||||
Como bien dice el Amestro Cluster, debes chequearlo con las cosas basicas primero antes de ponerte a hacer mucho código. Primero debes ver si te puedes conectar y se puedes recoger los registros de la tabla. POr ejemplo: ------------------ if ( !$result ) echo ("No abrió la base de datos"); else { echo ("No abrió la base de datos"); } --------------------------- y luego con el código que te escibió Cluster ------------------------------------------- $ultimo = dbase_numrecords($result); $num_campos=dbase_numfields($result); echo "último: ".$ultimo."<br>"; echo "numero campos: ".$num_campos; ------------------------------------------ Algo tiene que aparecer...algun mensaje de error...que te indique si hay algo malo.... SAludos...
__________________ ________________________________________ Ugho. |
| |||
estoy ocupando dreamweaver este es el codigo ahora no muestra ningun error soy principiante en esto por favor ayuda <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Documento sin título</title> </head> <body> <? $basedatos = "clientes.dbf"; $result = dbase_open ( $basedatos, 2 ); if ( !$result ) echo ("No abrió la base de datos"); else { echo ("No abrió la base de datos"); } $ultimo = dbase_numrecords($result); $num_campos=dbase_numfields($result); echo "último: ".$ultimo."<br>"; echo "numero campos: ".$num_campos; ?> </body> </html> |
| |||
Un "fallo" general que veo es que usas y asumes todas las variables externas de tus scripts como "globales" .. Es decir: if($envia!="" && $codigo!="" && $nombre!="") { sería: if($_POST['envia'] !="" && $_POST['codigo'] !="" && $_POST['nombre'] !="") { Así con todas las variables que envias desde tus formularios/links .. hacia tus scripts PHP ... La configuración de PHP (php.ini) de: register_globals .. ¿que valor tiene? Si está a OFF .. el código que usas actualmente nunca te funcionará como esperas. Debes usar (para evitar tener que depender de esa configuración si está a ON u a OFF) los arrays superglobales: $_POST, $_GET .. etc. En las FAQ's de este foro PHP .. de las primeras se comenta este tema. Un saludo, |
| |||
Y que hay de todas las recomendaciones que te hemos dado? .. Has probado todo eso de ir haciendo "echo" de las variables que ahí usas y observar que valores te dán? Yo no uso dBase como para probar tu código ... y no sé de que te servirá un ejemplo que no es tu caso particular .. (ni la BD te la van a proporcionar tal vez) por eso .. insisto que debes evaluar "como" está funcionando el script (su ejecución) para que veas o veamos el problema concreto. Por eso te sugerí como ir recogiendo datos para ver donde está el problema. Si haces cambios en tu script .. -debes aportar- el código como te quedó .. tal vez no implementastes bien o te dejastes algún detalle. Por mi parte lo que "alego" tanto es que se te pide cierta información y no la proporcionas .. no sé si esperas que se te responda con múltitud de ejemplos y que "alguno funcione" .. Bueno, en ese caso estás en tu derecho (pero dilo simplemente). Mi filosofía es "enseñarte" a ver el problema .. justamente para que en otra ocasión lo puedas resolver tu mismo. Para resolver un "problema" si no hay información no sé como hacerlo. Un saludo, |
| |||
gracias cluster por tu tiempo el problema es que yo no me manejo muy bien en dbase mira tengo las tablas y las abro en access como tipo de archivo dbase para leerlas no tengo ningun programa dbase instalado. el codigo que te envie lo encontre en la web y lo modifique segun lo que yo entendi. una tabla que tengo se llama clientes.bdf y los campos codigo y nombre. necesito leer los campos y mostrarlos en mi lista menu. Estoy trabajando con dreamweaver Orientame un poco por favor. Disculpa que se tan duro de entender atentamente gracias saludos |
| |||
Cita: Ok .. si no te manejas con dBase (yo tampoco lo uso!!!) pero lo que si que podrás hacer para evaluar el problema es lo que te he comentado y que no sé por qué "omites".
Iniciado por Cluster Y que hay de todas las recomendaciones que te hemos dado? .. Has probado todo eso de ir haciendo "echo" de las variables que ahí usas y observar que valores te dán? Yo no uso dBase como para probar tu código ... y no sé de que te servirá un ejemplo que no es tu caso particular .. (ni la BD te la van a proporcionar tal vez) por eso .. insisto que debes evaluar "como" está funcionando el script (su ejecución) para que veas o veamos el problema concreto. Por eso te sugerí como ir recogiendo datos para ver donde está el problema. Si haces cambios en tu script .. -debes aportar- el código como te quedó .. tal vez no implementastes bien o te dejastes algún detalle. Por mi parte lo que "alego" tanto es que se te pide cierta información y no la proporcionas .. no sé si esperas que se te responda con múltitud de ejemplos y que "alguno funcione" .. Bueno, en ese caso estás en tu derecho (pero dilo simplemente). Mi filosofía es "enseñarte" a ver el problema .. justamente para que en otra ocasión lo puedas resolver tu mismo. Para resolver un "problema" si no hay información no sé como hacerlo. Un saludo, Un saludo, |
| |||
El q no se quiere ayudar eres tú, muestra bien el código, utiliza [ PHP] código [ /PHP], sin espacios, haz como Cluster te lo ha indicado, un echo por variable q estas usando con dbase, dices q estas trabajando en tú máquina, pues fijate q en el php.ini este configurado para mostrar todos los errores, debería de quedar algo así error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT display_errors = On postea q es lo q te muestran los echo q haces a cada variable, vé el código fuente de tu página. Usas los array superglobales $_POST, $_GET, y demás.
__________________ Dios dira que esto no es justo, pero lo sera... |