Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php + sql] problem po przerobieniu skryptu
Forum PHP.pl > Forum > Przedszkole
Gość_Pablo
Cześć!
W temacie php jestem "przedszolakiem", więc tou się pojawiam... Przerabiałem skypt napisany przez mojego znajomego i niestety, albo bez zrozumienia, albo czegoś mi brakuje w wiedzy... Zapewne obie sprawy na raz...

Skrypt miał wysyłać obazki na www, jednocześnie podpisując je (opis + autor). Info o obrazku w bazie danych. Ponadto pod opisem miały być coś w rodzaju:
<-- 1/12 -->

Kod
<body>

<?php
include("galeria.cfg");
$link = mysql_connect("$dbhost","$dbuser","$dbpasswd");
mysql_select_db ("$galeria");
$zapytanie = "SELECT * FROM $g ORDER BY id limit $od,1";
?>

<table align="center" width="560" cellspacing="5" cellpadding="0" border="1">
<tr><th colspan="3" align="center">...jakiś tytuł...</th></tr>
<tr><td colspan="3" align="center">
    <?php    
    $wykonaj = mysql_query ($zapytanie);
    while($wiersz=mysql_fetch_object($wykonaj))
    {
    $path = "$m/$g/" .$wiersz->id.".jpg";
    print ("<img src=\"$path\"><br>");
    }
    ?>
    </td></tr>

    
    
<tr><td colspan="3" align="center">
<?php
$wykonaj = mysql_query ($zapytanie);
while($wiersz=mysql_fetch_object($wykonaj,MYSQL_ASSOC))
{    
$opis = $wiersz->opis;
if ($opis != NULL)
{
print ".$wiersz->opis." - ".$wiersz->autor.";
}
}
?>
    </td>
</tr>
<tr>
   <td width="25%">&nbsp;</td>
   <td width="50%" align="center">
    <?php
list($ile)=mysql_fetch_row(mysql_db_query("$foto","SELECT count(*) FROM $g "));

$st=$ile;
$ak=$od +1;

if ($ak > 1)
{
$od2=$od - 1;
echo "<a href=\"?m=$m&l=lewa&g=$g&od=$od2\"><img src=\"/prev.gif\" border=\"0\" align=\"top\"></a>";
}
if ($ile > 1  )
{
echo "<font class=\"o2\">$ak/$st";
}
if ($ile -1 > $od  )
{
$od=$od + 1;
echo "<a href=\"?m=$m&l=lewa&g=$g&od=$od\"><img src=\"img_menu/next.gif\" border=\"0\" align=\"top\"></a>";
}

?>
    </td><td width="25%">&nbsp;</td></tr></table>
</body>


Tak to wygląda... niestety na stronie poajwia sie tabelka i w odpowiednich polach ostrzeżenia:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-7\www\www.mojadres.pl\galeria\trojka\plik.php on line 22

$g - to jest nazwa tabeli, z której chcę czytać i nazwa podkatalogu (który znajduje się w podkatalogu &g - galeria (wszystkie obrazki mają być w katalogu galeria i dopiero tam chcę mieć podkatalogi z nazwami $g)


Pomożecie??
nospor
wyswietl se zapytanie:
  1. <?php
  2. echo $zapytanie;
  3. ?>

zapewne chodzi o register_globals
musi dac na poczatku tak:
  1. <?php
  2.  
  3. if (isset($_GET['od']))
  4. $od= $_GET['od'];
  5. else $od=0;
  6. ?>

i prosze uzywac wlasciwego bbcode
Gość_Pablo
na echo $zapytanie odpowiedź jest następująca:

SELECT * FROM trojka ORDER BY id limit 0,1 - czyli z odpowiedniej bazy i tabeli czyta (ta trojka, to właśnie $g)

skrypt działa poprawnie na moim lokal serwerze (wersja przed przeróbką) zastanawiam się czy to nier jest problem, tego że nie właściwie podaję miejsce w którym to ma się pojawić??

Bo po dodaniu:
if (isset($_GET['od']))
itd nic się nie zmieniło...
są dalej takie komunikaty, jak były...
chyba, że niewłaściewie dopisałem linijki powyższego kodu?
Gość_Pablo
Hi!
I co nikt - nie widzi co tutaj moze być nie tak?
Bo poza standardową odpowiedzią, to chyba nic więcej tu nie uzyskam...
Szkoda - bo bardzo liczyłem na Waszą pomoc
nospor
dorob jeszcze logowanie bledu :
  1. <?php
  2. $wykonaj = mysql_query ($zapytanie) or die (mysql_error());
  3. ?>

co teraz pokazuje?
Gość_Pablo
O!

pokazuje komunikat: No Database Selected

i znikają informacje o błędach
nospor
Cytat
i znikają informacje o błędach
smile.gif poniewaz die( ) powoduje natychmiastowe przerwanie aplikacji

Cytat
pokazuje komunikat: No Database Selected
cos masz nie tak z wyborem bazy. zawsze uzywaj mysql_error()

  1. <?php
  2. $link = mysql_connect("$dbhost","$dbuser","$dbpasswd") or die(mysql_error());
  3. echo 'Nazwa bazy danych to:'.$galeria.' <br />';
  4. mysql_select_db ($galeria) or die(mysql_error());
  5. ?>
Guest
Cytat
smile.gif poniewaz die( ) powoduje natychmiastowe przerwanie aplikacji

więc, słusznie się tu domysliłem...

Tak, już poprawiłem - miast $galeria będzie db, bo tak zadeklarowałem w pliku *.cfg


niesteyt teraz mam komunikaty:
Nazwa bazy danych to:galeria - wszystko ok

ale potem poojawia się tabela (czyli wczytuje coś wiecej niż popzrednio), ale jest i nowy komunikat:

Cytat
Query was empty


jest to odpowiedź na:

  1. <?php
  2. $wykonaj = mysql_query ($zapytanie) or die (mysql_error());
  3. ?>
Guest
Sorry - zawróciłem głowę teraz popzrednim postem - zauważyłem już błąd.
Teraz musze wyjść - mam już 75% efektu o który mi chodziło, ale jeszcze coś jest nie tak. Sprawdzę po powrocie, ale jeśli mi się nie uda, to pozwolę sobie zadać jeszcze jakieś pytanie.

Dzięki za pomoc!! rolleyes.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.