Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wysyłanie danych ze zmiennej
spit
post
Post #1





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

Ostrzeżenie: (0%)
-----


Cześć,
Robię system ocen i mam taki dziwny problem. Mam taki kod:
  1. <?php
  2. $polaczenie = mysql_connect('localhost','root','') or die('Polaczenie nieudane'); 
  3. mysql_query("SET NAMES 'utf8'", $polaczenie);
  4. mysql_select_db('pattonfans') or die('Wybranie bazy nieudane'); 
  5. $zapytanie = "SELECT a.*, SUM(b.ocena) as ocena, COUNT(b.aid) as liczba FROM dyskografia a LEFT JOIN oceny b ON (a.id = b.aid) WHERE a.id = '1' GROUP BY a.id";
  6. $wynik = mysql_query($zapytanie) or die(mysql_error());
  7. while($rekord=mysql_fetch_array($wynik)) 
  8. {
  9. $ocena = round($rekord["ocena"] / $rekord["liczba"], 1); 
  10. $id = '$rekord["id"]';
  11. echo 'Ocena: '.$ocena.'<br />
  12. Id albumu: '.$rekord["id"].'<br />';
  13. if($ocena < 1) {
  14. echo $ocena;
  15. } elseif($ocena > 5) {
  16. echo 'mniejsza niż 5';
  17. } 
  18. //wysylanie oceny
  19. if (isset($_POST['submit'])) 
  20. {
  21. $wyslanie = "INSERT INTO `oceny` (`id`, `aid`, `ocena`) VALUES (NULL, '$id', '{$_POST['nota']}')";
  22. }
  23. }
  24. ?>

I za skarby nie mogę przekazać zawartości zmiennej 'id' do zapytania 'wyslanie'. Co robie źle?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
prond
post
Post #2





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Taki kod:
  1. <?php
  2. $rekord = array (
  3. 'id' => 2
  4. );
  5. echo $id = '$rekord["id"]';
  6. ?>


Wyświetli Tobie :
  1. $rekord["id"]


Musisz po prostu wywalić 'ciapki':
  1. <?php
  2. echo $id = $rekord["id"];
  3. ?>
Go to the top of the page
+Quote Post
spit
post
Post #3





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

Ostrzeżenie: (0%)
-----


Z echo też próbowałem. Nie działa.
Go to the top of the page
+Quote Post
prond
post
Post #4





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


To nie chodzi o 'echo', ale o ciapki wokół $rekord["id"].
Poniżej masz pełny, poprawiony kod :
  1. <?php
  2. $polaczenie = mysql_connect('localhost','root','') or die('Polaczenie nieudane'); 
  3. mysql_query("SET NAMES 'utf8'", $polaczenie);
  4. mysql_select_db('pattonfans') or die('Wybranie bazy nieudane'); 
  5. $zapytanie = "SELECT a.*, SUM(b.ocena) as ocena, COUNT(b.aid) as liczba FROM dyskografia a LEFT JOIN oceny b ON (a.id = b.aid) WHERE a.id = '1' GROUP BY a.id";
  6. $wynik = mysql_query($zapytanie) or die(mysql_error());
  7. while($rekord=mysql_fetch_array($wynik)) 
  8. {
  9. $ocena = round($rekord["ocena"] / $rekord["liczba"], 1); 
  10. $id = $rekord["id"]; //tu byl blad
  11. echo 'Ocena: '.$ocena.'<br />Id albumu: '.$rekord["id"].'<br />';
  12. if($ocena < 1)
  13. {
  14. echo $ocena;
  15. }
  16. elseif($ocena > 5)
  17.  {
  18. echo 'mniejsza niż 5';
  19. } 
  20. //wysylanie oceny
  21. if (isset($_POST['submit'])) 
  22. {
  23. $wyslanie = "INSERT INTO `oceny` (`id`, `aid`, `ocena`) VALUES (NULL, '$id', '{$_POST['nota']}')";
  24. }
  25. }
  26. ?>
Go to the top of the page
+Quote Post
spit
post
Post #5





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

Ostrzeżenie: (0%)
-----


Tak też próbowałem.
Go to the top of the page
+Quote Post
styx
post
Post #6





Grupa: Zarejestrowani
Postów: 138
Pomógł: 3
Dołączył: 21.11.2005

Ostrzeżenie: (0%)
-----


Sprawdź czy na pewno coś(id) znajduje się w tej tablicy rekord za pomocą:

  1. <?php
  2. print_r ($rekord);
  3. ?>


może musisz używać aliasów

Ten post edytował styx 4.05.2007, 10:34:55
Go to the top of the page
+Quote Post
spit
post
Post #7





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 1.08.2005

Ostrzeżenie: (0%)
-----


Oczywiście że coś się znajduje, przecież zaraz po definicji zmiennej wywołuję $rekord["id"], właśnie by sprawdzić czy coś w niej jest.
  1. <?php
  2. $id = $rekord["id"]; //tu byl blad
  3. echo 'Ocena: '.$ocena.'<br />Id albumu: '.$rekord["id"].'<br />';
  4. ?>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.09.2025 - 20:17