Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

PROBLEMAS CON "Notice: Undefined offset:1" EN PHP+ORACLE

richiarcos

Bovino adolescente
Desde
13 Sep 2008
Mensajes
52
¡¡¡ AYUDA POR FAVOR !!!

Quiero mostrar los registros (de una tabla) de mi BD en una tabla para poder visualizarlos. Los registros me los muestra pero quiero que éstos estén dentro de una tabla ordenadamente ¿Cómo le hago?

Esta es la parte del código que me genera el resultado de mi query sin formato alguno he aquí donde quiero mostrarlo dentro de una tabla.

PHP:
$i=0;
$j=0;

while(ocifetchinto($stmt,$result_array)){
	if ($i>=$offset){
		if($j<$limit){
			for ($k=0; $k<=count($result_array);$k++){
				echo @$result_array[$k]."";
			}
			echo"";
			$j++;
		}
	}
	$i++;
}
echo"";

Este es el código completo de la paginación aunque los botones "siguiente" 1 2 3 4 ... "anterior" no me mandan ningún resultado. Solo me marca el total de registros que existen en la tabla de la BD y entre qué resultados se encuentra el usuario actualmente.

Por ejemplo:
Hay 11 resultados
Ahora se muestran los resultados del 1 al 3.


PHP:
if (empty($offset)|| $offset<0){
	$offset=0;
}

$limit=3;

$conn=ocilogon("pgj", "pgjtab", "XE");
if (!$conn){
	echo"<h1>ERROR - Could not connect to Oracle</h1>";
	exit;
}
	$sql = "SELECT count (*) FROM d_predenuncias";
	
	$stmt = ociparse($conn, $sql);
	if (!$stmt){
		echo "<h1>ERROR - Could not parse SQL statement.</h1>";
		exit;
	}
	
	ociexecute($stmt);
	
	ocifetchinto($stmt, $total_rows);
	if(!$total_rows[0]){
		echo "<h1>ERROR - No rows returned!</h1>";
		exit;
	}

$begin=($offset+1);
$end=($begin+($limit-1));
if ($end>$total_rows[0]){
	$end=$total_rows[0];
}
echo "Hay <b>$total_rows[0]</b> resultados.<br>\n";
echo "Ahora se muestran los resultados del <b>$begin</b> al <b> $end</b>.<br><br>\n";

ocifreestatement($stmt);

$sql = "SELECT * FROM (SELECT fecha, querella, descripcion, email, folio, agenciaInvestigadora, ROW_NUMBER() over (ORDER BY fecha  DESC) nFila FROM d_predenuncias) WHERE nFila BETWEEN 1 AND 3";

$stmt=ociparse($conn, $sql);

if(!$stmt){
	echo"<h1>ERROR - Could not parse SQL statement. </h1>";
	exit;
}



ociexecute($stmt);

$i=0;
$j=0;

while(ocifetchinto($stmt,$result_array)){
	if ($i>=$offset){
		if($j<$limit){
			for ($k=0; $k<=count($result_array);$k++){
				echo @$result_array[$k]."";
			}
			echo"";
			$j++;
		}
	}
	$i++;
}
echo"";

$pages=intval($total_rows[0]/$limit);

if($total_rows[0]%$limit){
	$pages++;
}
if ($offset!=0){
	$prevoffset=$offset-$limit;
	echo "<a href=\"?offset=$prevoffset\"> &laquo; Anterior</a> &nbsp; \n";
}

for ($i=1; $i<=$pages;$i++){
	if(($offset/$limit)==($i-1)){
		echo "$i &nbsp;";
	} else {
		$newoffset=$limit*($i-1);
		echo "<a href=\"?offset=$newoffset\">$i</a> &nbsp; \n";
	}
}
if (!((($offset/$limit)+1)==$pages)&&$pages!=1){
	$newoffset=$offset+$limit;
	echo "<a href=\"?offset=$newoffset\"> Siguiente &raquo;</a><p>\n";
}
ocifreestatement($stmt);
ocilogoff($conn);

Espero puedan ayudarme.
Gracias.
 
Volver
Arriba