Foros del Web » Programando para Internet » PHP »

conectar odbc

Estas en el tema de conectar odbc en el foro de PHP en Foros del Web. Hola: Estoy tratando de conectar el odbc para cargar una tabla DBF, pero me da un error, y no le encuentro, si alguien me podria ...
  #1 (permalink)  
Antiguo 26/08/2003, 10:39
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años
Puntos: 3
conectar odbc

Hola:

Estoy tratando de conectar el odbc para cargar una tabla DBF, pero me da un error, y no le encuentro, si alguien me podria ayudar se lo agradeceria, este es el codigo y el error

/* Codigo desde aqui */

$ser="localhost"; #the name of the SQL Server
$db="exis"; #the name of the database
$user=""; #a valid username
$pass=""; #a password for the username


$conn=odbc_connect("Driver={SQL Server};Server=".$ser.";Database=".$db,$user,$pass );

/* hasta aqui el codigo */

/* el error es */

Warning: SQL error: [Microsoft][Administrador de controladores ODBC] Longitud de cadena o de búfer no válida, SQL state S1090 in SQLConnect in c:\foxserv\www\exis\login.php on line 11


Gracias por la ayuda que me puedan dar.
  #2 (permalink)  
Antiguo 26/08/2003, 12:19
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
Hola pahs5809.
te dejo un ejemplo de la coneccion ODBC con SQL SERVER que yo utilizo y funciona bien.


Código PHP:
<?php
  
// Se establece la conexión con la fuente de datos
  
$conex odbc_connect("MISERVER""sa""sa");
   
$consulta "select * from mibase.tmp_consulta";      

  
$resultado odbc_exec($conex$consulta);
  
$Num_Campos odbc_num_fields($resultado);
  
$Num_Filas odbc_num_rows($resultado);
  
$Num_Filas 0;
 echo 
"<TABLE>\n";
  
// Se recorre el cursor
  
while (odbc_fetch_row($resultado))
     {
     
$Num_Filas++;
     echo 
"<TR>";
     for (
$i 1$i <= $Num_Campos$i++)
        {
        echo 
"<TD ALIGN='center'>";
        if (
odbc_result($resultado$i))
            
$campos odbc_result($resultado$i);
            echo 
$campos ;
           
        } 
//de los campos de una tupla: el for
          
echo "</TR>";echo "\n";            
     } 
// de todas las tuplas respuesta: el while

  // Si noy hay datos se indica 
  
if ($Num_Filas == 0)
     {
     echo 
"<TR><TD COLSPAN=9><CENTER>";
     echo 
"No hay clientes";
     echo 
"</CENTER></TD></TR>\n"
     }
  echo 
"</TABLE>\n";
  echo 
"<BR><HR><BR>\n";
  
  echo 
"<B>Número de filas: $Num_Filas<BR>\n";
  echo 
"Número de campos: $Num_Campos</B>\n";
    
  echo 
"</CENTER>";

  
//Se liberan recursos y se cierra la conexión
  
odbc_free_result($resultado);
  
odbc_close($conex);
?>
</BODY>
</HTML>
bueno espero que te sirva ye mando un saludo y suerte.
  #3 (permalink)  
Antiguo 26/08/2003, 12:46
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años
Puntos: 3
Gracias de antemano, dejame lo pruebo,
  #4 (permalink)  
Antiguo 26/08/2003, 13:04
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años
Puntos: 3
Hola Chuty : el problema que traigo es que no puedo conectar una base de datos dbf y en los FAQS me indicaban que con el odbc me iva a funcionar, pero veo que no , ya que la conexion a la base de datos dbf traigo un error de syntaxis, bueno eso creo, pero de todas maneras te pongo el codigo a ver si me puedes ayudar a corregir el error,

Gracias de antemano y un cordial saludo.
  #5 (permalink)  
Antiguo 26/08/2003, 13:09
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años
Puntos: 3
Se me olvido el codigo pero ahi esta:

$dbcon = dbase_open('lote.dbf',0) or die ("no accesa el archivo dbf");

$dbrows = dbase_numrecords($dbcon);
for ($c = 1; $c <= $dbrows; $c++) {
$dbreg = dbase_get_record($dbcon,$c);
$campo1 = $dbreg[0];
$campo2 = $dbreg[1];
$sql = "INSERT INTO base (cod, nome) VALUES('$campo1','$campo2')";
$x = mysql_query ($sql, $con) or die ("registro no insertado<br>");

}
echo \"<p><b>Importação finalizada!</b></p>\";
mysql_close ($con);
  #6 (permalink)  
Antiguo 26/08/2003, 13:23
Avatar de Chuty  
Fecha de Ingreso: noviembre-2002
Ubicación: el bar de la esquina
Mensajes: 609
Antigüedad: 21 años, 5 meses
Puntos: 2
que base de datos utilizas, MSSQL o MySQL ????
  #7 (permalink)  
Antiguo 26/08/2003, 13:42
 
Fecha de Ingreso: abril-2003
Ubicación: Monterrey, Nuevo Leon Mex
Mensajes: 300
Antigüedad: 21 años
Puntos: 3
Mysql, Amigo pero ya resolvi mi problema, para accesar bases de datos tipo dbf.

dejame abro un tema para que todo mundo pueda ver la respuesta.

Gracias de antemano Chuty
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 17:25.