Como dice mi ID , me llamo Diego y soy de Chile.
No se si lo posteo en el foro correcto , mis disculpas si es que es asi.
Resulta que me pasaron un sistema hecho en PHP+MySQL+Apache y me pidieron transformarlo a PHP+SQL SERVER ( nunca he trabajado con PHP+ SQL SERVER ) . Actualmente lo estoy montando sobre IIS7. La base de datos está en otro sitio y ya logré hacer la conexión entre el sistema y la base de datos , pero mi problema surge por que no puedo lograr visualizar los datos que pido cuando hago una consulta SELECT a la bd sql server . No creo que sea un problema de la sentencia SQL por que , en el inicio de sesión , me toma los campos en forma correcta para acceder al sistema , creo que es mas un problema de las funciones de PHP que trae el sistema . El tema es lograr hacer visualizar la tabla con los datos que pido cuando hago la consulta (no muestra absolutamente nada). Ojala me puedan ayudar , les dejo el código.
Código PHP:
Ver original
<? $servicio = 66; require_once('includes/secure.php'); require_once('Connections/db1.php'); include ("clases/class.pagination.php"); $SQL = "SELECT * FROM flota ORDER BY codigo ASC "; $RFLOTA = $db1->Execute($SQL); $SQL = "SELECT * FROM unidad_negocio ORDER BY codigo ASC "; $RUNINEG = $db1->Execute($SQL); $SQL = "SELECT * FROM tipo_gasto ORDER BY codigo ASC "; $RTGASTO = $db1->Execute($SQL); $SQL = "SELECT e.nombre, e.tac, f.descripcion as flota, u.codigo as unidad, t.codigo as tipogasto, c.codigo as cuentagasto FROM equipo e LEFT OUTER JOIN unidad_negocio u ON e.id_unidad_negocio = u.id LEFT OUTER JOIN tipo_gasto t ON e.id_tipo_gasto = t.id LEFT OUTER JOIN cta_gasto c ON e.id_cta_gasto = c.id LEFT OUTER JOIN flota f ON e.id_flota = f.id WHERE e.id <> 0 and e.eliminado = 0"; if($_GET['equipo']!='') if($_GET['flota']!='') $SQL .=" AND e.id_flota = ".$_GET['flota']; if($_GET['centrocosto']!='') $SQL .=" AND e.id_unidad_negocio = ".$_GET['centrocosto']; if($_GET['tipogasto']!='') $SQL .=" AND e.id_tipo_gasto = ".$_GET['tipogasto']; ?> <html> <head> <script src="js/mootools-release-1.11.js" language="javascript"></script> <script> function llenaDatos() { <? echo ' if($(\''.$cl.'\')){ $(\''.$cl.'\').value=\''.$vl.'\'; }'; endwhile; endif; ?> } </script> <link rel="stylesheet" href="estilos.css" type="text/css" /> <style type="text/css"> <!-- .style1 { font-size: 10pt; font-weight: bold; } --> </style> </head> <body> <form method="get" action="" name="form"> <table width="100%" border="0" cellpadding="0"> <tr> <td height="30" align="center" class="barraTitulo"><span class="style1">Reporte de Rendimiento</span></td> </tr> <tr> <td><hr></td> </tr> <tr> <td><table width="100%" border="0" cellpadding="0" class="barra1"> <tr> <td width="11%" align="right">Equipo:</td> <td width="20%"><input type="text" name="equipo" id="equipo"></td> <td width="15%" align="right">Centro de Costo:</td> <td width="36%"> <select name="centrocosto" id="centrocosto"> <option value="">Todos</option> <? while(!$RUNINEG->EOF):?> <option value="<?=$RUNINEG->fields['id'] ?>"><?=$RUNINEG->fields['codigo']." ".$RUNINEG->fields['descripcion'] ?></option> <? $RUNINEG->MoveNext(); endwhile;?> </select></td> <td width="18%"> </td> </tr> <tr> <td align="right">Flota:</td> <td><select name="flota" id="flota"> <option value="">Todos</option> <? while(!$RFLOTA->EOF): ?> <option value="<?=$RFLOTA->fields['id'] ?>"><?=$RFLOTA->fields['codigo']." ".$RFLOTA->fields['descripcion'] ?></option> <? $RFLOTA->MoveNext(); endwhile;?> </select></td> <td align="right">Tipo de Gasto:</td> <td><select name="tipogasto" id="tipogasto"> <option value="">Todos</option> <? while(!$RTGASTO->EOF):?> <option value="<?=$RTGASTO->fields['id']?>"><?=$RTGASTO->fields['codigo']." ".$RTGASTO->fields['descripcion'] ?></option> <? $RTGASTO->MoveNext(); endwhile;?> </select></td> <td> </td> </tr> <tr> <td colspan="5" align="center"> </td> </tr> <tr> <td colspan="5" align="center"><input type="submit" name="Submit" id="button" value="Buscar"> <input type="reset" name="button2" id="button2" value="Limpiar"></td> </tr> </table></td> </tr> <tr> <td><hr></td> </tr> <tr> <td><table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="4%" align="center" class="barra1">Tac</td> <td width="24%" align="center" class="barra1">Equipo</td> <td width="26%" align="center" class="barra1">Flota</td> <td width="8%" align="center" class="barra1">Tipo Gasto</td> <td width="8%" align="center" class="barra1">Centro de Costo</td> <td width="7%" align="center" class="barra1">Cuenta de Gasto</td> <td width="12%" align="center" class="barra1">Ultima Lectura</td> <td width="11%" align="center" class="barra1">Rendimiento</td> </tr> <? while(!$RSEQ->EOF): $SQL = "SELECT max(id) as id, cant_litros,fecha,hora,kilometra FROM transaccion WHERE num_llave = '".$RSEQ->fields['tac']."' GROUP BY id, cant_litros,fecha, hora ORDER BY fecha, hora LIMIT 2"; $RM = $db1->Execute($SQL); if($RM->RecordCount()>1): $i=1; while(!$RM->EOF): if($i==1): $litros1 = $RM->fields['cant_litros']; $kilo1 = $RM->fields['kilometra']; else: $litros2 = $RM->fields['cant_litros']; $kilo2 = $RM->fields['kilometra']; endif; $i++; $RM->MoveNext(); endwhile; $dif = $kilo2-$kilo1; if($dif==0): $rendimiento = 0; else: $rendimiento = $litros2 / $dif; endif; endif; ?> <tr> <td class="borde1"><?=$RSEQ->fields['nombre'] ?></td> <td class="borde1"><?=$RSEQ->fields['flota'] ?></td> <td align="center" class="borde1"><?=$RSEQ->fields['cuentagasto'] ?></td> <td align="center" class="borde1"><?=$RSEQ->fields['unidad'] ?></td> <td align="center" class="borde1"><?=$RSEQ->fields['tipogasto'] ?></td> <td class="borde1"> </td> <td class="borde1"><?=$rendimiento ?></td> </tr> <? $RSEQ->MoveNext(); endwhile;?> <tr> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> <td> </td> </tr> </table></td> </tr> <tr> <td> </td> </tr> </table> </form> <script> llenaDatos(); </script> </body> </html>
Saludos y gracias de antemano.
PD: El string de conexión que usa es este:
Código PHP:
Ver original
<? # PHP ADODB document - made with PHAkt # FileName="Connection_php_adodb.htm" # Type="ADODB" # HTTP="true" # DBTYPE="odbc" $MM_db1_HOSTNAME = 'iqqsqld01'; $MM_db1_DATABASE = 'odbc:sacc'; $MM_db1_USERNAME = 'sacc'; $MM_db1_PASSWORD = 'sacc123'; $MM_db1_LOCALE = 'En'; $MM_db1_MSGLOCALE = 'En'; $MM_db1_CTYPE = 'C'; $KT_locale = $MM_db1_MSGLOCALE; $KT_dlocale = $MM_db1_LOCALE; $KT_serverFormat = '%Y-%m-%d %H:%M:%S'; $QUB_Caching = 'false'; $KT_localFormat = $KT_serverFormat; require_once(CONN_DIR.'/../adodb/adodb.inc.php'); //$db1=&KTNewConnection($MM_db1_DBTYPE); $db1 =& ADONewConnection($MM_db1_DBTYPE); if($MM_db1_DBTYPE == 'access' || $MM_db1_DBTYPE == 'odbc'){ if($MM_db1_CTYPE == 'P'){ $db1->PConnect($MM_db1_DATABASE, $MM_db1_USERNAME,$MM_db1_PASSWORD); } else $db1->Connect($MM_db1_DATABASE, $MM_db1_USERNAME,$MM_db1_PASSWORD); } else if (($MM_db1_DBTYPE == 'ibase') or ($MM_db1_DBTYPE == 'firebird')) { if($MM_db1_CTYPE == 'P'){ $db1->PConnect($MM_db1_HOSTNAME.':'.$MM_db1_DATABASE,$MM_db1_USERNAME,$MM_db1_PASSWORD); } else $db1->Connect($MM_db1_HOSTNAME.':'.$MM_db1_DATABASE,$MM_db1_USERNAME,$MM_db1_PASSWORD); }else { if($MM_db1_CTYPE == 'P'){ $db1->PConnect($MM_db1_HOSTNAME,$MM_db1_USERNAME,$MM_db1_PASSWORD, $MM_db1_DATABASE); } else $db1->Connect($MM_db1_HOSTNAME,$MM_db1_USERNAME,$MM_db1_PASSWORD, $MM_db1_DATABASE); } function updateMagicQuotes($HTTP_VARS){ foreach ($HTTP_VARS as $name=>$value) { } else { foreach ($value as $name1=>$value1) { } } } } } return $HTTP_VARS; } $_GET = updateMagicQuotes($_GET); $_POST = updateMagicQuotes($_POST); $_COOKIE = updateMagicQuotes($_COOKIE); } } $_SERVER['REQUEST_URI'] = $_ENV['REQUEST_URI']; } $_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'].(isset($_SERVER['QUERY_STRING'])?"?".$_SERVER['QUERY_STRING']:""); } ?>