WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Hämta från databas men exludera.. (https://www.wn.se/forum/showthread.php?t=22626)

vidir 2007-08-03 12:18

Hej!

Jag har en lite nyhetsfunktion i PHP och en sida som hämtar (listar) upp alla inlägg..
Har satt in en ny tabell "typ" som jag markerar något av inläggen med "P" när jag inte vill visa inlägget.

kan man exludera "P" i tabellen "typ" i strängen SELECT * FROM nyheter WHERE id = '$id ???????'

Tack på förhand..

boena 2007-08-03 12:30

SELECT * FROM nyheter WHERE id = '$id' AND typ != 'P'

vidir 2007-08-03 12:53

Citat:

Originally posted by boena@Aug 3 2007, 12:30
SELECT * FROM nyheter WHERE id = id AND typ = P

Menar du att uppropstecknet ! exluderar?

fors 2007-08-03 12:58

Citat:

Ursprungligen postat av vidir
Citat:

Ursprungligen postat av boena
SELECT * FROM nyheter WHERE id = id AND typ = P

Menar du att uppropstecknet exluderar?

!= gör det. Alltså, där typ INTE är 'P' i det här fallet.

boena 2007-08-03 13:02

Precis, utropstecknet exkluderar.

vidir 2007-08-03 13:08

Citat:

Originally posted by boena@Aug 3 2007, 13:02
Precis, utropstecknet exkluderar.


Tack!!!!!!! och så hette det "utropstecken" och inte uppropstecken som jag sa tidigare hi hi...

Skall testa detta nu..

goose 2007-08-03 13:32

du har satt in en ny tabell som heter "typ"? eller en ny kolumn i tabellen "nyheter" som heter "typ"?

Lumax 2007-08-03 14:01

Jag har för mig att äldre versioner av MySQL inte klarade != och att man istället fick använda <>

mbomelin 2007-08-03 14:20

<> ska det vara enligt sql-standarden, detta för att få kompatibilitet mellan olika databaser.

vidir 2007-08-03 14:32

Citat:

Ursprungligen postat av mbomelin
ska det vara enligt sql-standarden, detta för att få kompatibilitet mellan olika databaser.

Citat:

Ursprungligen postat av goose
du har satt in en ny tabell som heter typ? eller en ny kolumn i tabellen nyheter som heter typ?

Ja, typ är faktiskt en kolumn i tabellen nyheter , där sätter jag olika värden som a, b, c , d osv, men när jag anger värdet P skall den inte visa något, eller hämta från den raden.

Har ni något exempel på <> ?

jonny 2007-08-03 15:23

bör bli
Kod:

SELECT * FROM nyheter WHERE id = '$id' AND typ <> 'P'

funcall 2007-08-03 15:26

SELECT * FROM nyheter WHERE id = '$id' AND NOT typ = 'P'
Borde funka med

vidir 2007-08-03 17:45

= ! funkar på listsidan,,, men nu när jag satte på sökmotor så liistas även sidor med "P" attribut..

där hjälpte inte = !


Här fungerar det inte?
SELECT * FROM nyheter WHERE typ = ! 'P' AND rubrik LIKE '%$sok%' OR text LIKE '%$sok%' OR sidnamn LIKE '%$sok%' OR bildtext LIKE '%$sok%' OR meta LIKE '%$sok%' ORDER BY rubrik";

boena 2007-08-03 18:05

det ska vara !=

vidir 2007-08-03 20:16

tack boena.
om det är != är det något mellanslag kanske för att det fungerar iaf inte enligt nedan

"SELECT * FROM nyheter WHERE typ != 'P' AND rubrik LIKE '%$sok%' OR text LIKE '%$sok%' OR sidnamn LIKE '%$sok%' OR bildtext LIKE '%$sok%' OR meta LIKE '%$sok%' ORDER BY rubrik";

HenSod 2007-08-03 20:22

Testa med att ändra till:
Kod:

"SELECT * FROM nyheter WHERE typ != 'P' AND (rubrik LIKE '%$sok%' OR text LIKE '%$sok%' OR sidnamn LIKE '%$sok%' OR bildtext LIKE '%$sok%' OR meta LIKE '%$sok%') ORDER BY rubrik";

vidir 2007-08-03 20:32

GREEEAAAAT!


Detta funkar nu UTMÄRKT!!! Tack HenSod!

najk 2007-08-03 21:00

nevermind

vidir 2007-08-04 02:03

Its OK,,, its no sugar in it .... =)

kydyl 2007-08-04 02:33

du får nog lägga din lite parenteser, tror inte den tolkar att typ != 'P' måste vara sann för alla dina OR uttryck. Jag tror att den tolkar det såhär:

SELECT * FROM nyheter WHERE (typ != 'P' AND rubrik LIKE '%$sok%') OR (text LIKE '%$sok%)' OR (sidnamn LIKE '%$sok%') OR (bildtext LIKE '%$sok%') OR (meta LIKE '%$sok%') ORDER BY rubrik";

när du vill att det ska tolkas
SELECT * FROM nyheter WHERE typ != 'P' AND (rubrik LIKE '%$sok%' OR text LIKE '%$sok%' OR sidnamn LIKE '%$sok%' OR bildtext LIKE '%$sok%' OR meta LIKE '%$sok%') ORDER BY rubrik";

EDIT:
*suck*
Missade att det fanns en "sida två" :blink:


Alla tider är GMT +2. Klockan är nu 13:01.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson