Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] = ' ' - co to jest?
Forum PHP.pl > Forum > Przedszkole
konrad93
witam, ucze sie z ksiazki php 5 apache, mysql o podstaw i w 4 rozdziale jest np cos takiego

  1. <?php
  2. function generate_ratings($review_rating) {
  3.  $movie_rating = '';
  4.  for($i=0; $i<$review_rating; $i++) {
  5.    $movie_rating .= "<img src=\"thumbsup.gif\">&nbsp;";
  6.  }
  7.  return $movie_rating;
  8. }
  9. ?>

ale nie moge znalezc o co chodzi z 3 linijka $movie_rating = ''; tzn jak to dziala? po co jest to = ' ' skoro w srodku nic nie ma?

pozdrawiam
wookieb
Żeby zadeklarowac zmiennai zeby php nie pluł błędami. Wywal to linijke i zobacz co sie stanie.
blooregard
To się nazywa inicjalizacja zmiennej, czyli nadanie jej początkowej wartości - w tym przypadku jest to pusty ciąg znakowy (string).
@wookieb: byłeś szybszy smile.gif
konrad93
thx za info smile.gif

pozdrawiam

witam ponownie
mam kolejny problem, tym razem z cwiczeniami w tej ksiazce

  1. <?php
  2. $movieid = $_GET['movie_id'];    
  3. $review_table_headings=<<<EOD
  4.   <tr>
  5.     <th><a href="movie_details.php?movie_id=$movieid&order_by=review_date">Data wystawienia</a></th>
  6.     <th><a href="movie_details.php?movie_id=$movieid&order_by=review_name">Tytuł recenzji</a></th>
  7.     <th><a href="movie_details.php?movie_id=$movieid&order_by=review_reviewer_name">Recenzent</a></th>
  8.     <th><a href="movie_details.php?movie_id=$movieid&order_by=review_comment">Treść recenzji</a></th>
  9.     <th><a href="movie_details.php?movie_id=$movieid&order_by=review_rating">Ocena </a></th>
  10.   </tr>
  11. EOD;
  12.  
  13. if (!$_GET['order_by']) $order_by='review_date';
  14. else $order_by = $_GET['order_by'];
  15.  
  16. $review_query = "SELECT * FROM reviews WHERE review_movie_id
  17.                ='" .$_GET['movie_id']. "'         ORDER BY " . $order_by . "ASC" ;
  18. ?>


czemu wywala blad?

Kod
Notice: Undefined index: order_by in C:\wamp\www\movie_details.php on line 99
Unknown column 'review_dateASC' in 'order clause'


pozdrawiam
Wicepsik
Nieznana tabela review_dateASC

Zrób tak:

  1. <?php
  2. $review_query = "SELECT * FROM reviews WHERE review_movie_id
  3.               ='" .$_GET['movie_id']. "'         ORDER BY " . $order_by . " ASC" ; // spacja przy ASC
  4. ?>
nexis
Cytat(Wicepsik @ 7.07.2009, 18:59:27 ) *
Nieznana tabela review_dateASC

Raczej nieznana kolumna.
konrad93
thx wyswietlilo sie, ale dalej wyskakuje
Cytat
Notice: Undefined index: order_by in C:\wamp\www\movie_details.php on line 99
viking
16.
  1. <?php
  2. $order_by = (!$_GET['order_by']) ? 'review_date' : $_GET['order_by'];
  3. ?>

I poczytaj o sql injection bo $review_query jest dziurawe jak sito. Najlepiej od razu zainteresuj się PDO.
Crozin
Ale błąd "Undefined index..." nadal pozostanie. W adresie nie przekazujesz ?order_by=x, a w skrypcie używasz go jakby było. W dodatku coś co jest z założenia i w praktyce tekstem (string) traktujesz jak wartość boolean-owską.

isset" title="Zobacz w manualu PHP" target="_manual
konrad93
to jest przyklad z ksiazki php 5 apache, mysql o podstaw. cwiczenie do rozdzialu 4. jest rozwiazane i powinno dzialac, a tu takie problemy. probowalem z przekazywaniem zmiennej i tym isset, ale mi nie wychodzi, wiec poki co sobie odpuszcze i pojde dalej

pozdrawiam
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.