/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
database forespørgsel, OR problemer
Fra : Thomas


Dato : 24-01-05 11:21

jeg har denne forespørgsel

$search="SELECT U_Number,U_Username,U_Groups FROM w3t_Users WHERE U_Username
LIKE '$index' AND U_Groups LIKE '%6%' ";

Hvis den ikke finde nogen med U_Username så skal den lede efter en hvor
Index er = U_Number

hvordan får jeg det ind ??


thomas



 
 
Troels Arvin (24-01-2005)
Kommentar
Fra : Troels Arvin


Dato : 24-01-05 11:36

On Mon, 24 Jan 2005 11:21:29 +0100, Thomas wrote:

> $search="SELECT U_Number,U_Username,U_Groups FROM w3t_Users WHERE U_Username
> LIKE '$index' AND U_Groups LIKE '%6%' ";
>
> Hvis den ikke finde nogen med U_Username så skal den lede efter en hvor
> Index er = U_Number
>
> hvordan får jeg det ind ??

SELECT ...
FROM ...
WHERE
(din eksisterende betingelse)
OR
(U_Number='$index')
;

(Hvis U_Number har en numerisk datatype, så er det i øvrigt lidt fjollet
at sætte '-tegn omkring den værdi, du vil match'e. Men nu kender vi ikke
dine datatyper.)

Dette kan resultere i mere end én række i resultatsættet, men det kan
din forespørgsel vel allerede, eftersom at du benytter LIKE.

Vær i øvrigt opmærksom på, at du tilsyneladende bryder første
normalform ved at have en liste af værdier i dit U_Groups felt. Når man
bryder de grundlæggende normalformer, åbner man for forskellige
fejlsituationer, se fx.
http://www.tonymarston.net/php-mysql/database-design.html

--
Greetings from Troels Arvin, Copenhagen, Denmark


Jacob Atzen (24-01-2005)
Kommentar
Fra : Jacob Atzen


Dato : 24-01-05 12:08

On 2005-01-24, Troels Arvin <troels@arvin.dk> wrote:
> SELECT ...
> FROM ...
> WHERE
> (din eksisterende betingelse)
> OR
> (U_Number='$index')
> ;

Det bryder vel med OP's ønske:

   Hvis den ikke finde nogen med U_Username så skal den lede efter
   en hvor Index er = U_Number

I alt fald som jeg læser det.

--
Med venlig hilsen
- Jacob Atzen

Troels Arvin (24-01-2005)
Kommentar
Fra : Troels Arvin


Dato : 24-01-05 12:16

On Mon, 24 Jan 2005 11:08:07 +0000, Jacob Atzen wrote:

> Det bryder vel med OP's ønske:
>
>    Hvis den ikke finde nogen med U_Username så skal den lede efter
>    en hvor Index er = U_Number

Ja, men som jeg skrev, er hans forespørgsel allerede lettere
uforudsigelig, tilsyneladende. Så der må allerede være kode, der tager
højde for det.

Men ellers kunne man måske massere sig frem til en løsning vha. COALESCE
og nogle subqueries.

--
Greetings from Troels Arvin, Copenhagen, Denmark


zigma.dk (24-01-2005)
Kommentar
Fra : zigma.dk


Dato : 24-01-05 11:51


> $search="SELECT U_Number,U_Username,U_Groups FROM w3t_Users WHERE U_Username
> LIKE '$index' AND U_Groups LIKE '%6%' ";

> Hvis den ikke finde nogen med U_Username så skal den lede efter en hvor
> Index er = U_Number

> hvordan får jeg det ind ??

$search="SELECT U_Number,U_Username,U_Groups FROM w3t_Users WHERE U_Username
LIKE '$index' AND U_Groups LIKE '%6%' ";
$result=mysql_query($search);
$num=mysql_num_rows($result);
if($num=="0"){
$new_search="SELECT [..den nye sql-string...]'";
$result=mysql_query($search);
$num=mysql_num_rows($result);
}

Et meget hurtigt svar, ved ikke om det er korrekt skrevet, men jeg håber du kan
følge mig... I'm out! *puf* =)

// Zigma

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jacob Atzen (24-01-2005)
Kommentar
Fra : Jacob Atzen


Dato : 24-01-05 12:27

On 2005-01-24, Thomas <thomas@4701.dk> wrote:
> jeg har denne forespørgsel
>
> $search="SELECT U_Number,U_Username,U_Groups FROM w3t_Users WHERE U_Username
> LIKE '$index' AND U_Groups LIKE '%6%' ";
>
> Hvis den ikke finde nogen med U_Username så skal den lede efter en hvor
> Index er = U_Number
>
> hvordan får jeg det ind ??

Prøv at spørge i database gruppen. Der ved de mere om databaser end vi
gør.

--
Med venlig hilsen
- Jacob Atzen

Thomas (24-01-2005)
Kommentar
Fra : Thomas


Dato : 24-01-05 14:38

tak skal i have allesammen

Problemet er løst

thomas



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste