Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Dodaj koszyk
Forum PHP.pl > Forum > Przedszkole
salva
mam utworzona tabele koszulki (id,nazwa ,opis,obraze,cena) ktora mi wyswietla na stronie
gdy klikam na przycisk dodaj - tworzy mi tabele o nazwie użytkownika jaki jest zarejestrowany

  1. <?php
  2. $connection = @mysql_connect("mysql.cba.pl", "", "")
  3. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  4. $db = @mysql_select_db("", $connection)
  5. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  6. $user=$_SESSION['login'];
  7. $zapytanie = 'CREATE TABLE '.$user.' (id int NOT NULL , nazwa char(40), opis char(100), cena char(40), PRIMARY KEY(id))';
  8. $idzapytania = mysql_query($zapytanie);
  9.  
  10. header("location:zapistabela.php");
  11.  
  12.  
  13.  
  14.  
  15.  
  16. ?>


nastepnie po zrobieniu mi tabeli przechodzi mi do skryptu zapistabela.php
  1. <?php
  2. $connection = @mysql_connect("mysql.cba.pl", "", "")
  3. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  4. $db = @mysql_select_db("", $connection)
  5. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  6. $user=$_SESSION['login'];
  7. echo$user;
  8. $produkt= $_GET['id'];
  9. echo$produkt;
  10. $zapytanie = "SELECT `id`,`nazwa`,`opis`,`obrazek`,`cena`, FROM `koszulki` WHERE `ID`='$produkt'";
  11. $idzapytania = mysql_query($zapytanie);
  12.  
  13. mysql_query($dodaj_do_koszyka);
  14. while ($wiersz = mysql_fetch_row($idzapytania))
  15. {
  16. $ins = mysql_query("INSERT INTO $user SET id='$produkt', nazwa='$wiersz[1]',opis='$wiersz[2]',obrazek='$wiersz[3]', cena='$wiersz[4]'");
  17. if($ins) header("location:str.php");
  18. }
  19.  
  20. header("location:koszykdobry.php");
  21.  
  22. ?>
  23.  
  24.  


i teraz chcialbym aby skrypt mi zczytywał cała zawortosc tabeli i zpisywal w nowej tabeli - ktora ma nazwe uzytkownika( tylko nie wiem co mam zle zrobione)
MateuszS
Pododawaj do zapytań or die(mysql_error()); i się dowiesz.
salva
mógłbys jasniej??
MateuszS
  1. $idzapytania =mysql_query($dodaj_do_koszyka) or die(mysql_error());


i analogicznie po innych zapytaniach. Jeżeli to kwestia zapytania to wyświetli błąd.
salva
  1. #
  2.  
  3. $zapytanie = "SELECT `id`,`nazwa`,`opis`,`obrazek`,`cena`, FROM `koszulki` WHERE `ID`='$produkt'";
  4. $idzapytania = mysql_query($zapytanie)or die(mysql_error());
  5.  
  6.  

dodalem tu i wyswietla taki blad

Cytat
goscYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM `koszulki` WHERE `ID`=''' at line 1
MateuszS
Zobacz, najpierw chcesz aby zaznaczyło pole 'id' a potem dajesz warunek WHERE `ID`. Wielkość liter ma znaczenie. Lepiej napisz SELECT * FROM...
salva
zminilem na WHERE 'id' i ten sam bład
MateuszS
Zmienna produkt jest pobierana z $_GET, na pewno masz adres w postaci jakisplik.php?id=5 czy jakaś tam inna cyfra?
No i masz jakiś przecinek przed FROM
salva
nie jestem zaawansowany i troszke Cię nie rozumiem
MateuszS
Przeanalizuj poniższy kod, stwórz jakiś plik test.php i wlep to do niego

  1. $produkt = "Nie przypisales zadnej wartosci do produktu";
  2. if(isset($_GET["id"])) {
  3. $produkt = "Wartosc produktu ".$_GET["id"];
  4. }
  5. echo $produkt;
  6.  


Odpal go najpierw z adresu test.php a potem np. test.php?id=7
Wicepsik
Usuń przecinek przed from.
salva
ja chcialbym aby mi zapisywalo do nowej tabeli ten produkt prz ktorym wcisne dodaj ( zczytywalo to id ktory sie znajduje przy tym dodaj).
MateuszS
No i elegancko, ale nic nie zczytasz jeżeli nie będziesz miał poprawnego zapytania. Dopiero gdy przestanie Ci wywalać ten błąd jest szansa że cokolwiek zczytasz z bazy.
misiek08
Na pewno poprawiłeś ID na id? (wielkość liter)
Jeżeli to dalej nie pomaga to powiedz nam co pokaże taki kod:
  1. <?php
  2. $connection = @mysql_connect("mysql.cba.pl", "", "")
  3. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  4. $db = @mysql_select_db("", $connection)
  5. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  6. $user=$_SESSION['login'];
  7. echo$user;
  8. $produkt= $_GET['id'];
  9. echo$produkt;
  10. $zapytanie = "SELECT `id`,`nazwa`,`opis`,`obrazek`,`cena` FROM `koszulki` WHERE `id`='{$produkt}'";
  11. $idzapytania = mysql_query($zapytanie);
  12.  
  13. mysql_query($dodaj_do_koszyka);
  14. while ($wiersz = mysql_fetch_row($idzapytania))
  15. {
  16. $ins = mysql_query("INSERT INTO $user SET id='$produkt', nazwa='$wiersz[1]',opis='$wiersz[2]',obrazek='$wiersz[3]', cena='$wiersz[4]'");
  17. if($ins) header("location:str.php"); else die(mysql_error());
  18. }
  19.  
  20. header("location:koszykdobry.php");
  21.  
  22. ?>
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.