Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z cudzysłowem
Forum PHP.pl > Forum > Przedszkole
DMB_BoreQ
Uzywam Krasnala i tworzę sobie komunikator internetowy na php. Gdy skończyłem pisać kod wersji podstawowej messages.php (plik odpowiedzialny za wyświetlanie rozmowy), wyskoczył mi taki komunikat:

Parse error: syntax error, unexpected T_STRING in c:\usr\apache\httpd\html\cm\messages.php on line 25

Wiem że ma coś to wspólnego z linią 25 kodu, ale mnie wiem co jest źle...

Tutaj jest kod tego pliku:


  1. <?php
  2.  
  3. include('./config.php');
  4.  
  5. if (isset($_GET['id']) && $_GET['id']>0)
  6. {
  7. $query = mysql_query ("SELECT * FROM boreq_call WHERE call_id = '".$_GET['id']."';");
  8.  
  9. if ($query && $row = mysql_fetch_row($query))
  10. {
  11. if ($row['call_closed'] = '1')
  12. {
  13. print "Rozmowa zakończona";
  14. }
  15.  
  16. else
  17. {
  18. $query2 = mysql_query ("SELECT * FROM boreq_messages WHERE call_id = '".$_GET['id']."';");
  19.  
  20. while ($query2 && $row2 = mysql_fetch_array($query2))
  21. {
  22. $query3 = mysql_query("SELECT user_id, user_name FROM boreq_users WHERE user_id = '".$row2['user_id'].'";");
  23. if ($query3 && $row3 = mysql_fetch_row($query3))
  24. {
  25. print $row3['user_name'];
  26. }
  27.  
  28. print '[ ".$row2['call_time']." ]';
  29. print '<br>';
  30. print $row2['msg_text'];
  31. print '<br>';
  32. }
  33. }
  34. }
  35. }
  36.  
  37. ?>



Prosze o pomoc!

(aha. Przepraszam bardzo, jakbym napisał ten temat w złym forum)
cadavre
A spróbuj tak:
  1. <?php
  2.  
  3. include('./config.php');
  4.  
  5. if (isset($_GET['id']) && $_GET['id']>0)
  6. {
  7. $query = mysql_query ("SELECT * FROM boreq_call WHERE call_id = '".$_GET['id']."';");
  8.  
  9. if ($query && $row = mysql_fetch_row($query))
  10. {
  11. if ($row[call_closed] = '1')
  12. {
  13. print "Rozmowa zakończona";
  14. }
  15.  
  16. else
  17. {
  18. $query2 = mysql_query ("SELECT * FROM boreq_messages WHERE call_id = '".$_GET['id']."';");
  19.  
  20. while ($query2 && $row2 = mysql_fetch_array($query2))
  21. {
  22. $query3 = mysql_query("SELECT user_id, user_name FROM boreq_users WHERE user_id = $row2[user_id]");
  23. if ($query3 && $row3 = mysql_fetch_row($query3))
  24. {
  25. print $row3[user_name];
  26. }
  27.  
  28. print '[ "'.$row2[call_time].'" ]';
  29. print '<br>';
  30. print $row2[msg_text];
  31. print '<br>';
  32. }
  33. }
  34. }
  35. }
  36.  
  37. ?>
dr_bonzo
cadavre: zle stosujesz tablice:
  1. <?php
  2. "SELECT user_id, user_name FROM boreq_users WHERE user_id = $row2[user_id]"
  3. ?>

powinno byc
  1. <?php
  2. "SELECT user_id, user_name FROM boreq_users WHERE user_id = " . $row2[ 'user_id' ]
  3. ?>


DMB_BoreQ: spojrz na kolorowanie tekstu:
  1. <?php
  2. query3 = mysql_query("SELECT user_id, user_name FROM boreq_users WHERE user_id = '".$row2['user_id'].'";"); // << nie potrzebny apostrof na samym koncu, przed [";"]
  3. if ($query3 && $row3 = mysql_fetch_row($query3))
  4. {
  5. print $row3['user_name'];
  6. }
  7. ?>

i to jak jest nieprawidlowe - z powodu rozpoczecia stringa i niezakonczenia go.
DMB_BoreQ
Dzieki. Poprawiłem i działa. Dobrze zrobiłem, że się zapytałem winksmiley.jpg
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.