Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Skrypt newsów bład :/
Forum PHP.pl > Forum > Przedszkole
kamlocik
Witam jestem początkującym w PHP i MySQL. Postanowiłem do swojej strony zrobić system newsów mam panel admina dodawanie edytowanie usuwanie newsów. Zrobiłem plik odpowiedzialny za wyświetlanie newsów na stronie i wszystko śmiga. Ale mam problem gdyż chcę zrobić coś w stylu "czytaj więcej" tzn. na stronie głównej wyświetla się tylko krótka treść a po kliknięciu w link czytaj więcej pojawia się reszta newsa ale tylko tego newsa a nie wszystkich w bazie. Jak, że jestem bardzo początkujący to zrobiłem to tak trochę na logikę i wyskakuje mi błąd: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\kamlot\newsy.php on line 10

i nie wiem co może być tego problemem:/ Proszę o pomoc.

  1. <?
  2. $polaczenie=mysql_connect('localhost','root','krasnal')
  3.    or die('Nieudane połączenie z bazą danych...');
  4. mysql_select_db('portal')
  5.    or die('Nie udało się wybrać bazy danych...');
  6. if(isset($_GET['news']) && $_GET['news']=='czytaj' && isset($_GET['id']))
  7. {
  8.    $ide=$_GET['id'];
  9. $caly=mysql_query("SELECT * FROM news FOR id=.$ide");
  10.    while($wiersz=mysql_fetch_array($caly)) ##tu wywala blad..
  11.      {
  12.    echo '<b>';
  13.    echo $wiersz['tytul'];
  14.    echo '</b>';
  15.    echo '<br>Dodał: ';
  16.    echo $wiersz['autor'];
  17.    echo ' ';
  18.    echo $wiersz['data'];
  19.    echo ' źródło: ';
  20.    echo $wiersz['zrodlo'];
  21.    echo "<br>\n";
  22.    echo $wiersz['krotka_tresc'];
  23.    echo "<br>\n";
  24.    echo $wiersz['tresc'];
  25.    }  }
  26. else
  27.     {
  28. $link=mysql_query("SELECT * FROM news ORDER BY id desc");
  29. while($wiersz=mysql_fetch_array($link))
  30. {
  31.    echo '<b>';
  32.    echo $wiersz['tytul'];
  33.    echo '</b>';
  34.    echo '<br>Dodał: ';
  35.    echo $wiersz['autor'];
  36.    echo ' ';
  37.    echo $wiersz['data'];
  38.    echo ' źródło: ';
  39.    echo $wiersz['zrodlo'];
  40.    echo "<br>\n";
  41.    echo $wiersz['krotka_tresc'];
  42.    echo "<br>\n";
  43.    echo '<a href="newsy.php?news=czytaj&id='.$wiersz['id'].'">czytaj dalej</a>';
  44.     echo "<br>\n";
  45.    } }   ;
  46. mysql_close($polaczenie);
  47. ?>
zeten
  1. <?php
  2. $caly=mysql_query("SELECT * FROM news WHERE id=$_GET['id']");
  3. ?>


10 linijka, popraw.
marian2299
  1. <?php
  2. $caly=mysql_query("SELECT * FROM news FOR id=.$ide");
  3. ?>

zamień na
  1. <?php
  2. $caly=mysql_query("SELECT * FROM news FOR id='".$ide."');
  3. ?>
iVorIus
  1. <?php
  2. $caly = mysql_query( "SELECT * FROM `news` WHERE `id` = '$ide'" );
  3. ?>
kamlocik
Cytat(marian2299 @ 4.08.2009, 15:53:55 ) *
  1. <?php
  2. $caly=mysql_query("SELECT * FROM news FOR id=.$ide");
  3. ?>

zamień na
  1. <?php
  2. $caly=mysql_query("SELECT * FROM news FOR id='".$ide."');
  3. ?>



Cytat(iVorIus @ 4.08.2009, 16:01:27 ) *
  1. <?php
  2. $caly = mysql_query( "SELECT * FROM `news` WHERE `id` = '$ide'" );
  3. ?>


Witam ponownie, niestety ale żadna z tych opcji nie pomogła sad.gif cały czas wyskakuje ten sam błąd w tym samym miejscu. Ktoś ma jakieś inne pomysły jakby to rozwiązać, możne nie tyle modyfikacja w tym kodzie bo jak mówiłem jestem początkujący, może ktoś ma pomysł jak jakoś inaczej napisać żeby po kliknięciu w "czytaj dalej" pojawiła się cała treść danego newsa, początkowo jest wyświetlana treść zapisana w komórce "krotka_tresc" a po kliknięciu w "czytaj dalej" ma pojawić się "krotka_tresc" i tekst zapisany w komórce "tresc"

Z góry dziękuję za pomoc..
gakusei
czy w $ide jest napewno wartosc?
generalnie to wypisuj sobie przy tak konstruowanym kodzie
mysql_query($zapytanie_sql) or die(mysql_error());

wywal te cudzyslowia ;]
$caly = mysql_query( "SELECT * FROM news WHERE id = $ide" ) or die(mysql_error());
iVorIus
A czy w bazie istnieje rekord o podanym ID ?

Jeżeli nie to pokazuje błędy.
kamlocik
Cytat(gakusei @ 4.08.2009, 22:01:00 ) *
czy w $ide jest napewno wartosc?
generalnie to wypisuj sobie przy tak konstruowanym kodzie
mysql_query($zapytanie_sql) or die(mysql_error());

wywal te cudzyslowia ;]
$caly = mysql_query( "SELECT * FROM news WHERE id = $ide" ) or die(mysql_error());


Wielkie dzięki, to pomogło teraz śmiga smile.gif))


Cytat(iVorIus @ 4.08.2009, 23:20:33 ) *
A czy w bazie istnieje rekord o podanym ID ?

Jeżeli nie to pokazuje błędy.

Tak w bazie istniał rekord o tym ID winksmiley.jpg


Jeszcze raz dzięki wszystkim za odpowiedzi. Pozdrawiam winksmiley.jpg
kamil1624
Witam serdecznie Postanowiłem sobie zrobic system newsów na mojej stronie prawdę mówiąc jestem chyba jeszcze większym laikiem niźli kolega wyżej.
W związku z czym bardzo prosił bym o wyjaśnienie jak mogę osiągnąć taki efekt jak w temacie. Właściwe wystarczył by mi jeden poprawnie napisany kod na którym mógłbym się wzorować. A i proszę o nie odsyłanie mnie na internetowe kursy php bo takie własnie wertuję i nie tylko takie ale niestety nie jestem wstanie połknąć wszystkiego w jeden dzień co znowuż zmusiło mnie do napisania tego postu. Z góry dzięki.
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.