Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Problem z dodaniem do bazy
mihipoznan
post
Post #1





Grupa: Zarejestrowani
Postów: 194
Pomógł: 0
Dołączył: 27.02.2008

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


Kod:
  1. <?
  2. require("connection.php");
  3. connection();
  4. $login = $_POST['login'];
  5. $imie = $_POST['imie'];
  6. $email = $_POST['email'];
  7. $woj = $_POST['woj'];
  8. $rodzaj = $_POST['rodzaj'];
  9. $ilosc = $_POST['ilosc'];
  10. $tel = $_POST['tel'];
  11. $cena = $_POST['cena'];
  12. $opis = $_POST['opis'];
  13. $gg = $_POST['gg'];
  14. $skype = $_POST['skype'];
  15. $typ = $_POST['typ'];
  16. $name = $_POST ['name'];
  17. $drugi = $_POST['drugi'];
  18. $pierwszy = $_POST['pierwszy'];
  19. $drugi = $_POST['drugi'];
  20. $pierwszy = $_POST['pierwszy'];
  21. if($_POST['pierwszy'] == $_POST['drugi']) { 
  22.  $sql = "pierwszy='".$_POST['pierwszy']."'";
  23. }else{
  24. $sql = "pierwszy='".$_POST['pierwszy']."', drugi='".$_POST['drugi']."'"; 
  25. }
  26. $dodaj = "INSERT INTO $tabela SET 
  27. firma='".$HTTP_SESSION_VARS['login']."',
  28. ".$sql.",
  29. opis='".$opis."', 
  30. ilosc='".$ilosc."', 
  31. cena='".$cena."', 
  32. gg='".$gg."', 
  33. skype='".$skype."', 
  34. tel='".$tel."', 
  35. imie='".$HTTP_SESSION_VARS['imie']."', 
  36. email='".$HTTP_SESSION_VARS['email']."', 
  37. woj='".$HTTP_SESSION_VARS['woj']."', 
  38.  link_obrazek='".$HTTP_SESSION_VARS['name']."', 
  39. ip='".$ip."'"; 
  40.  
  41. mysql_query($dodaj) or die('Błąd: ' . mysql_error() . ' - ZAPYTANIE: ' . $dodaj); 
  42. if( $dodaj )
  43. {
  44. echo ("<b>Twoja oferta zostaĹ‚a dodana :)</b><br>Kliknij 'oferty' aby przejsć do wykazu ofert");
  45. } 
  46. else 
  47. {
  48. echo (mysql_error()."Błąd nie udaĹ‚o siÄ™ dodać nowej oferty. Prosimy o kontakt na adres: mihipoznan@gmail.com");
  49. }
  50. ?>


I wyskakuje :
  1. <?php
  2. Błąd: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET firma='Przykładowa', pierwszy='śruta', drugi='rzepakowa', ' at line 1 - ZAPYTANIE: INSERT INTO SET firma='Przykładowa', pierwszy='śruta', drugi='rzepakowa', opis='sdf', ilosc='dfg', cena='sdf', gg='sd', skype='sdfd', tel='dsf', imie='Michał Majos', email='mihipoznan@gmail.com', woj='Wielkopolskie', link_obrazek='', ip='10.4.0.69'
  3. ?>

wie ktoś z jaką zmienną jest problem ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mihipoznan
post
Post #2





Grupa: Zarejestrowani
Postów: 194
Pomógł: 0
Dołączył: 27.02.2008

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


Mam tak:
  1. <?
  2. require("connection.php");
  3. connection();
  4. $login = $_POST['login'];
  5. $imie = $_POST['imie'];
  6. $email = $_POST['email'];
  7. $woj = $_POST['woj'];
  8. $rodzaj = $_POST['rodzaj'];
  9. $ilosc = $_POST['ilosc'];
  10. $tel = $_POST['tel'];
  11. $cena = $_POST['cena'];
  12. $opis = $_POST['opis'];
  13. $gg = $_POST['gg'];
  14. $skype = $_POST['skype'];
  15. $typ = $_POST['typ'];
  16. $name = $_POST ['name'];
  17. $drugi = $_POST['drugi'];
  18. $pierwszy = $_POST['pierwszy'];
  19. $drugi = $_POST['drugi'];
  20. $pierwszy = $_POST['pierwszy'];
  21. if($_POST['pierwszy'] == $_POST['drugi']) { 
  22.  $sql = "pierwszy='".$_POST['pierwszy']."'";
  23. }else{
  24. $sql = "pierwszy='".$_POST['pierwszy']."', drugi='".$_POST['drugi']."'"; 
  25. }
  26. $dodaj = "INSERT INTO $tabela (firma, pierwszy, drugi, opis, ilosc, cena, gg, skype, tel, imie, email, woj
    , link_obrazek, ip) VALUES ('"
    .$HTTP_SESSION_VARS['login']."', '$sql', '$sql', '$opis', '$ilosc', '$cena', '$gg', '$skype', '$tel', '".$HTTP_SESSION_VARS['imie']."', '".$HTTP_SESSION_VARS['email']."', '".$HTTP_SESSION_VARS['woj']."', '".$HTTP_SESSION_VARS['name']."', '$ip')";
  27. mysql_query($dodaj) or die('Błąd: ' . mysql_error() . ' - ZAPYTANIE: ' . $dodaj); 
  28. if( $dodaj )
  29. {
  30. echo ("<b>Twoja oferta zostaĹ‚a dodana :)</b><br>Kliknij 'oferty' aby przejsć do wykazu ofert");
  31. } 
  32. else 
  33. {
  34. echo (mysql_error()."Błąd nie udaĹ‚o siÄ™ dodać nowej oferty. Prosimy o kontakt na adres: mihipoznan@gmail.com");
  35. }
  36. ?>


I wyskakuje mi błąd:
Kod
        Błąd: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(firma, pierwszy, drugi, opis, ilosc, cena, gg, skype, tel, imie, email, woj, li' at line 1 - ZAPYTANIE: INSERT INTO (firma, pierwszy, drugi, opis, ilosc, cena, gg, skype, tel, imie, email, woj, link_obrazek, ip) VALUES ('Przykładowa', 'pierwszy='śruta', drugi='rzepakowa'', 'pierwszy='śruta', drugi='rzepakowa'', 'sdf', 'sd', 'df', 'sdf', 'sdf', 'dsf', 'Michał Majos', 'mihipoznan@gmail.com', 'Wielkopolskie', 'obrazki/0731adc982546be.jpg', '10.4.0.69')


A co do
Cytat
No tak ale zmienna $sql w tym przypadku może być albo w jednej kolumnie albo drugiej.. to napisać obie i jedna będzie pusta ?

To chodzi o to:
Kod
if($_POST['pierwszy'] == $_POST['drugi']) {
$sql = "pierwszy='".$_POST['pierwszy']."'";  
}else{  
$sql = "pierwszy='".$_POST['pierwszy']."', drugi='".$_POST['drugi']."'";

Jeżeli nazwy dwóch zmiennych są takie same to dodaje tylko wartość z jednej zmiennej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) A jak nie to do dwóch.
Go to the top of the page
+Quote Post

Posty w temacie


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: 7.10.2025 - 07:55