begin process at 2012 02 13 16:50:25
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

Oracle

 > 

Pagination de resultats d'une base oracle


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pagination de resultats d'une base oracle

lundi 20 avril 2009 à 17:26:29 | Pagination de resultats d'une base oracle

bsidy1

Bonjour à tout le monde
je galère grave même, j'ai du mal à m'en sortir pour ce qui est de la pagination des resultats
provenant d'une base de données oracle
.petite explication: Je récupère une requête (qu'importe la requête sans connaitre le nombre de champs) saisie dans zone area que je parse avant d'executer et afficher.
le problème est quand le nombre de ligne depasse 1500 la page prend trop de temps pour se charger alors je voudrai afficher 50 lignes par pages En somme faire une pagination.
Je vous envoie mon code.


if(isset($_GET[sidy1]))
{$conn=@ocilogon("sidy","sidy","INT"); //connexion à la base de données
if($conn)
{$demande = $_GET['REQUETES'];
if(preg_match("#insert|update|select#i", $demande))
{//controle des differentes requetes

$_SESSION['verif']="sidy"; $_SESSION['pass']==="barry";
// récuperation de la réquete saisie
$req=("$demande");
$ping=$parse=oci_parse($conn,$req); // parsing de la requete
if($ping){
$bon=@oci_execute($parse);// execution de la requete
}
if($bon)
{
echo'<table width="100%" align="center" border="0">';
//je compte le nombre de ligne du rasultat
$count=0;
$parse1=oci_parse($conn,$demande);
@oci_execute($parse1);
while(oci_fetch_array($parse1))
{$count=$count+1;}

echo"<h1>$count</h1>";
if((preg_match("#select#i", $req)) || ($amount < 0))
{while($row=oci_fetch_assoc($parse))
{//debut de l'affichage de données
$amount=count($row);
if(!isset($colonnes))
{$colonnes = array_keys($row); echo'<tr>'; $nombre=count($colonnes); $dimen=100/$nombre;
foreach($colonnesas$nom)//affichage des entêtess
{
echo "<td bgcolor='#9F3' width='$dimen%'><strong>" . htmlspecialchars($nom) . "</strong></td>";
} echo'</tr>';
}
echo'<tr>';
foreach($rowas$value)// affichages des données
{
echo "<td bgcolor='#FFF' width='$dimen%' >" . htmlspecialchars($value) . "</td>";
} echo'</tr>';
} echo'</table>'; //fin de l'affichage de données
}
elseif(preg_match("#insert|update#i", $req))
{echo"<center><h2><strong>requete execute</strong></h2></center>";}
else{echo"<center><h2><strong>Aucun enregistrement trouve</strong></h2></center>";}
}
else{echo"<center><strong><h2>La requete n'a pu etre execute</h2></strong></center>";}
 
}//controle des differentes requetes
else{echo"<center><h2><strong>votre requete ne peut etre execute</strong></h2></center>";}
}
else{echo"<center><h2><strong>Impossible d'etablir la connexion</strong></h2></center>";}
}

Je compte sur vous s'il vous plais ça une journée pleine que je me serre les neurones  les yeux sans rien trouver

mardi 21 avril 2009 à 12:59:20 | Re : Pagination de resultats d'une base oracle

DiGhan

Salut, Tu dois utiliser la requête cliente dans une sous requête et utiliser ROWNUM (le LIMIT oracle) en fixant un min et un max. Si mes souvenirs sont bons : SELECT *, ROWNUM AS R FROM (REQUETE_CLIENTE) WHERE R <= 50 Dans cet exemple, il n'y a qu'un MAX (il est possible de limiter le recordset sur un MIN mais je n'ai plus la syntaxe en tête). Je te laisse te documenter. Si le problème persiste, j'essaierai de t'aider sur la construction de la requête.


Cette discussion est classée dans : count, echo, parse, oci, if


Répondre à ce message

Sujets en rapport avec ce message

Comment faire disparaitre des bannieres une fois cliqué [ par stomy95 ] Bonjour a tous , voila je suis débutant en webmastering et je voudrais savoir comment fait on pour faire disparaitre des banniere une fois cliqué par problème d'addition [ par matton14 ] Bonjour!Je ne comprends pas pourquoi le script suivant ne marche pas:Remplis la case avec le bon nombre pour que le calcul soit correct&nbsp;:<?p récupérer un fichier de la BD MYSQL [ par mao54 ] salutj'ai des fichier stockés dans la base de donnée et j'ai une methode de recherche qui affiche ces resultats dans un tableau.je souhaite dans la co problème avec un if (parse error...) [ par nicomilville ] Salut, j'ai un soucis avec un if !!! J'obtient une parse error disant qu'il manque une '(' ou une ')' dans mon if c'est a dire a la ligne 2 !!if(isset HELP PLEASE !!!! problème de panier... [ par frederic66 ] Bonjour,mon site a été redirigé sur un nouveau serveur qui utilise PHP4, MySQL - 5.0.51a-log. depuis, mon panier ne fonctionne plus correctement... on connexion a distance via le telnet en php [ par omarboutkhoum ] bonjour à tous,j'ai essayer la classe telnet suivant que j'ai trouve sur internet pour me connecter par telnet a un serveur unix,mais le probleme c'es affiche plus ma bdd quand je supp une entrée [ par jphilippev ] bonjourj'ai un ti probleme sur une page phpelle affiche une liste contenue dans ma bddnom prenom etc... avec une limite de 20 par pagemais le probleme case a cocher php /mysql [ par yoyo77yo ] Bonjour !! et bonne année J'ai un probleme : j'ai repris le code de quélqu'un que j'ai payé mais par contre il n'est pas complet donc je voudrait javascript et php [ par amine390 ] salutje veux utilise une fonction java script en php j'arrive pas a recupere la valeur de cette function l'erreur qui s'affiche est undifuned function FONCTION de validation d'une adresse IP avec PHP [ par faty86 ] Salut tout le monde !!Bon j'ai integré une fonction dans mon code php pour valider le format d'une adresse IP le problème lors de l'execution j'ai ce


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,858 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales