Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> If W Zapytaniu Sql
sajborg
post 23.08.2004, 20:01:00
Post #1





Grupa: Zarejestrowani
Postów: 271
Pomógł: 0
Dołączył: 20.08.2003
Skąd: Szczecinek

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


Siemka mam takie zapytanie

  1. $sql="INSERT INTO homp_download (
  2. down_id,
  3. down_add,
  4. down_wersja,
  5. down_www,
  6. down_lang,
  7. down_title,
  8. down_opis,
  9. down_adres,
  10. down_kat,
  11. down_data,
  12. down_sciagniecia,
  13. down_size,
  14. down_autor) VALUES (
  15. 'NULL','".$userdata['username']."',
  16. '".addslashes($HTTP_POST_VARS['version'])."',
  17. '".addslashes($HTTP_POST_VARS['www'])."',
  18. '".addslashes($HTTP_POST_VARS['lang'])."',
  19. '".addslashes($HTTP_POST_VARS['name'])."',
  20. '".addslashes($HTTP_POST_VARS['opis'])."',
  21. '".$HTTP_POST_FILES['plik']['name']."',
  22. '".addslashes($HTTP_POST_VARS['kat'])."',
  23. '".date("d-m-y G:i:s")."',
  24. '0',
  25. '".$HTTP_POST_FILES['plik']['size']."',
  26. '".addslashes($HTTP_POST_VARS['autor'])."'
  27. )";


I mam pytanie czy moge jakos dac ifka w tym ze jesli w bazie istnieje juz w polu down_title tresc z $HTTP_POST_VARS['name'] to wyswietlilo echo i zatrzymało zapytanie albo tak jak WHERE zadziałało mozna to zrobic petlą dodajac wszystkie title to tablicy i potem sprawdzac ale ja chcem to w zapytaniu jakos zrobic mianowicie WHERE

Ten post edytował paweb 23.08.2004, 20:06:49


--------------------
Warsztat: gPHPEdit | Linux 2.6.17-11-generic (Ubuntu)
Sprzęt: Noteook BenQ A33E
___________________________________________________
Go to the top of the page
+Quote Post
invx
post 23.08.2004, 20:02:55
Post #2





Grupa: Zablokowani
Postów: 655
Pomógł: 0
Dołączył: 28.11.2003
Skąd: Zagórz

Ostrzeżenie: (80%)
XXXX-


w zapytaniu, hyba niebardzo, ale w kodzie php, mozna to zrobic,


--------------------
RCXcms
www.rcx.prv.pl
Pierwszy polski w pełni zintegrowany system portal
Go to the top of the page
+Quote Post
sajborg
post 23.08.2004, 20:06:20
Post #3





Grupa: Zarejestrowani
Postów: 271
Pomógł: 0
Dołączył: 20.08.2003
Skąd: Szczecinek

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


Cytat
I mam pytanie czy moge jakos dac ifka w tym ze jesli w bazie istnieje juz w polu down_title tresc z $HTTP_POST_VARS['name'] to wyswietlilo echo i zatrzymało zapytanie albo tak jak WHERE zadziałało mozna to zrobic petlą dodajac wszystkie title to tablicy i potem sprawdzac ale ja chcem to w zapytaniu jakos zrobic mianowicie WHERE


Przeczytaj dokładnie a szczegolnie

mozna to zrobic petlą dodajac wszystkie title to tablicy i potem sprawdzac ale ja chcem to w zapytaniu jakos zrobic mianowicie WHERE


--------------------
Warsztat: gPHPEdit | Linux 2.6.17-11-generic (Ubuntu)
Sprzęt: Noteook BenQ A33E
___________________________________________________
Go to the top of the page
+Quote Post
Yarecki
post 23.08.2004, 20:24:02
Post #4





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 1.04.2004
Skąd: Gdynia

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


Z poziomu bazy danych możesz ustawić pole na UNIQE. Jeśli będziesz dodawał wpis, w którym wartość pola ustawionego jest na UNIQE a podana wartość będzie już wcześniej w bazie to bd uniemożliwi zapis nowego wpisu.


--------------------
Nigdy nie kłóć się z głupim, ludzie mogą nie dostrzec różnicy.
Go to the top of the page
+Quote Post
Synaps
post 23.08.2004, 20:30:47
Post #5





Grupa: Zarejestrowani
Postów: 103
Pomógł: 0
Dołączył: 1.12.2003
Skąd: Gdynia

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


W INSERCIE za dużo nie zrobisz w tej kwesti. Żeby rozwiązać ten problem ja bym proponował jedną z dwóch dróg :

1) dla pola down_title ustawić flage Unique i obsłużyć potencjalny błąd/ ostrzeżenie przy wykonywaniu INSERT'a

2) przed INSERTEM sprawdzić
  1. SELECT count() AS ile FROM homp_download WHERE down_title = '$HTTP_POST_VARS['name']'

i w zależności od wyniku dodać lub wyświetlić komunikat dla użytkownika.

Inne rozwiąznie nie przychodzi mi do głowy , może ktoś z forumowiczy na coś wpadnie cool.gif


--------------------
MySQL said:

You have an error in your SQL syntax near ' `sygnatura` VARCHAR, NOT NULL
Go to the top of the page
+Quote Post
sajborg
post 24.08.2004, 09:02:48
Post #6





Grupa: Zarejestrowani
Postów: 271
Pomógł: 0
Dołączył: 20.08.2003
Skąd: Szczecinek

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


zrobilem tak

  1. <?php
  2. $sql=&#092;"SELECT count(*) FROM homp_download WHERE down_title='\".$HTTP_POST_VARS['name'].\"'\";
  3.  $result=$db->sql_query($sql);
  4.  list($jest)=$db->sql_fetchrow($result);
  5.  if ($jest==0){.......
  6. ?>


Działa thx


--------------------
Warsztat: gPHPEdit | Linux 2.6.17-11-generic (Ubuntu)
Sprzęt: Noteook BenQ A33E
___________________________________________________
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 25.06.2025 - 13:21