Skocz do zawartości

Porcjowanie wyników


PawelB90

Rekomendowane odpowiedzi

Mam problem z porcjowaniem wyników wybieranych z bazy danych.

kod wygląda następująco:

<?php
require_once('config.php');

error_reporting(E_ALL);
@mysql_connect($mysql_host, $mysql_user, $mysql_pass) or die("Nie można nazwiazac polaczenia z baza danych.");
@mysql_select_db($mysql_name) or die("Nie mozna wybrac bazy danych.");

$kat_id = 1;
$wns = 10;
$strona = $_GET['s'];
settype($strona, "integer");
$zapytanie_max = mysql_query("select text from opisy where kat_id=$kat_id");

$r_max = mysql_num_rows($zapytanie_max);

$w_wkat = mysql_query("select text from opisy where kat_id=$kat_id limit $strona*$wns,$wns");

while ($wyp_kat = mysql_fetch_row($w_wkat))
{
 echo ''. $wyp_kat .'<br>';
}

$lStron = ceil($r_max / $wns);  //poprawione, dzięki
for ($i=0;$i<$pNum;$i++)
echo '<a href="opisy.php?s='.$i.'">'.($i+1).'</a>';

?>

Męczyłem się i męczyłem, niestety nie mogę tego odpalić.

Strona zwraca taki komunikat:

dla strony opisy.php?s=1

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/_www/xxx/opisy.php on line 18

dla strony opisy.php

Notice: Undefined index: s in /home/_www/pawelb90/opisy/opisy.php on line 10

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/_www/xxx/opisy.php on line 18

Proszę o pomoc.

Odnośnik do komentarza
Udostępnij na innych stronach

W PHP nie mamy wbudowanej funkcji celi tylko ceil ;)

HTTP 200 usługi IT -> Dariusz Janicki | Realizacja serwisów www oraz oprogramowania w PHP / C# / Golang / Node.js / MySQL/ Laravel
Komory normobaryczne - normobaria.tech Wykonawca montażu i instalacji komory normobarii

Odnośnik do komentarza
Udostępnij na innych stronach

Po pierwsze w 10 linii:

$strona = !empty($_GET['s']) ? (int)$_GET['s'] : 0;

Po drugie używaj takiej konstrukcji do obsługi błędów SQL:

function sqlError($query, $error, $line){
  // tutaj komunikat w zaleznosci od tego czy to wersja developerska czy robocza, mozna sobie dopisac logowanie bledow
  echo "<pre>Query:\n$query\n\nError:\n$error\non line $line</pre>";
  exit;
}

$query = 'SELECT moje zapytanie,,,,';
$result = mysql_query($query) or sqlError($query, mysql_error(), __LINE__);

Skrypt chroniący zasoby serwera przed atakami botów exaBotDefender: https://docs.google.com/View?id=dgkd4pj4_0hfj5j4gx

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności