Pagina 1 din 1

Afisare mai multe rezultate la apasare de buton

Scris: Mie Oct 20, 2010
de claUdiu
Buna revin si eu cu o intrebare. Am un script care cauta in DB si pentru ca nu stiu sa fk paginare in url cu variabila GET am pe pagina vreo 20 de rezultate cum as putea sa imi apara doar 10 si la o apasare de buton sa arate si alte 10 rezultate in jos pe pagina si tot asa??ms mult

Afisare mai multe rezultate la apasare de buton

Scris: Mie Oct 20, 2010
de MarPlo
Poti folosi scriptul de la Script paginare daca vrei sa inveti / sa folosesti paginare cu GET in PHP.
Iar pentru ca sa afiseze in aceeasi pagina, dupa primele rezultate, altele, prin apasarea unui buton, trebuie combinat JavaScript si CSS.
- Rezultatele ce trebuie afisate de la buton trebuie adaugate intr-un DIV ascuns, acel div e descoperit prin cod JS cand se apasa butonul.
Te poti inspira din urmatorul exemplu:

Cod: Selectaţi tot

Rand 1 ... <br />
Randul 2 // ... <br />
Alte randuri
<div id="asc" style="display:none;">
Linia 3 ... <br />
Linia 4 ... <br />
Alte linii
</div>
<button onclick="document.getElementById('asc').style.display='block';">Buton</button>
Sau cu ajax, dar e mai complicat, tot ca o paginare.

Afisare mai multe rezultate la apasare de buton

Scris: Mie Oct 20, 2010
de claUdiu
am facut cu codul dat de tine asa:

index.php:

Cod: Selectaţi tot

<?php
include("rezultate.php");
?>
<div id="asc" style="display:none;">
<?php
include("rezultate2.php");
?>
</div>
<button onclick="document.getElementById('asc').style.display='block';">Buton</button>
rezultate.php:

Cod: Selectaţi tot

<?php
$conn = mysql_connect("localhost", "root", "")
    or die("Unable to connect to MySQL");
$selectdb = mysql_select_db('mesaje_private'); 
$interogare = "SELECT `username`, `email` FROM `useri` order by id desc LIMIT 10";
$rezultat = mysql_query($interogare);
if (mysql_errno()) {
    echo "<br />". mysql_errno(). " : ". mysql_error(). "<br />";
}
$nr_campuri = mysql_num_fields($rezultat);
if (mysql_num_rows($rezultat) == 0) {
    echo '0 rezultate';
}
else {
      

       while ($rand = mysql_fetch_assoc($rezultat)) {
   echo ''. $rand['username']. '<br>';
 }
}
?>
rezultate2.php:

Cod: Selectaţi tot

<?php
$conn = mysql_connect("localhost", "root", "")
    or die("Unable to connect to MySQL");
$selectdb = mysql_select_db('mesaje_private'); 
$interogare = "SELECT `username`, `email` FROM `useri` order by id desc";
$rezultat = mysql_query($interogare);
if (mysql_errno()) {
    echo "<br />". mysql_errno(). " : ". mysql_error(). "<br />";
}
$nr_campuri = mysql_num_fields($rezultat);
if (mysql_num_rows($rezultat) == 0) {
    echo '0 rezultate';
}
else {
      

       while ($rand = mysql_fetch_assoc($rezultat)) {
   echo ''. $rand['username']. '<br>';
 }
}
?>
cand intru in index.php apar primele 10 rezultate dar cand dau click pe buton apar si primele zece rezultate + cate mai sunt in db. Cum as putea sa fac sa apara rezultate de la ce username o ramas??ms mult

Afisare mai multe rezultate la apasare de buton

Scris: Joi Oct 21, 2010
de MarPlo
Poti sa pui si primul set de rezultate intr-un DIV si la Buton cod JS care sa-l ascunda.
Vezi cum e in exemplu:

Cod: Selectaţi tot

<div id="re1">
Rand 1 ... <br />
Randul 2 // ... <br />
Alte randuri
</div>
<div id="asc" style="display:none;">
Linia 3 ... <br />
Linia 4 ... <br />
Alte linii
</div>
<button onclick="document.getElementById('asc').style.display='block'; document.getElementById('re1').style.display='none';">Buton</button>