/ 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
Få første bogstav fra en streng
Fra : hoaX


Dato : 12-10-03 22:40

Hey NG

$streng = abc;

Er der et trick til at finde ud af hvad første bogstav er?

- hoaX
----------------------------------------
www.hoaxmusic.dk




 
 
Andreas Haugstrup Pe~ (12-10-2003)
Kommentar
Fra : Andreas Haugstrup Pe~


Dato : 12-10-03 22:46

"hoaX" <pt5@mail.dk> wrote in news:3f89ca2d$0$69905
$edfadb0f@dread12.news.tele.dk:

> $streng = abc;
>
> Er der et trick til at finde ud af hvad første bogstav er?

$streng[0] indeholder det første tegn. ($streng[1] indeholder det andet og
så fremdeles).

--
Personal: <http://www.solitude.dk>
File Thingie - PHP File Manager <http://www.solitude.dk/filethingie/>

hoaX (12-10-2003)
Kommentar
Fra : hoaX


Dato : 12-10-03 23:15

Er der så også en smart måde at lave en mysql_query på hvor man kun henter
rækker hvor forbogstavet i kolonnen navn er a?

- hoaX
----------------------------------------
www.hoaxmusic.dk



hoaX (12-10-2003)
Kommentar
Fra : hoaX


Dato : 12-10-03 23:19

Hov... Har set lyset... Ellers tak for det hurtige svar...

- hoaX
----------------------------------------
www.hoaxmusic.dk



Andreas Haugstrup Pe~ (12-10-2003)
Kommentar
Fra : Andreas Haugstrup Pe~


Dato : 12-10-03 23:22

"hoaX" <pt5@mail.dk> wrote in news:3f89d369$0$70010
$edfadb0f@dread12.news.tele.dk:

> Hov... Har set lyset... Ellers tak for det hurtige svar...

Så plejer man normalt at dele sine fund med gruppen. Derved kan andre også
lære.

--
Personal: <http://www.solitude.dk>
File Thingie - PHP File Manager <http://www.solitude.dk/filethingie/>

hoaX (12-10-2003)
Kommentar
Fra : hoaX


Dato : 12-10-03 23:34

> Så plejer man normalt at dele sine fund med gruppen. Derved kan andre også
> lære.

Tænkte jeg ikke lige på...


$res = mysql_query("select * from navne");


while ($row = mysql_fetch_array($res)) {


// hvis første bogstav fra kolonnen navn er lig a, så udskriv navn
if ($row['navn'][0] == a) {

echo .$row['navn']."<br />";

}
}

Er ikke så pædagogisk så jeg håber da at en eller anden fandt en
sammenhæng

- hoaX
----------------------------------------
www.hoaxmusic.dk



Peter Brodersen (12-10-2003)
Kommentar
Fra : Peter Brodersen


Dato : 12-10-03 23:45

On Mon, 13 Oct 2003 00:33:39 +0200, "hoaX" <pt5@mail.dk> wrote:

>$res = mysql_query("select * from navne");

Mest relevant, hvis man har en enorm mængde data, men for en god
ordens skyld:

Det vil normalt bedre kunne betale sig at lave begrænsningen allerede
i SQL'en, fx med LIKE:

$res = mysql_query("select * from navne where navn LIKE 'a%'");

Der kan selvfølgelig være specielle situationer, hvor man ikke kan
lave opdelingen allerede på SQL-niveau.

Som en sidenote kan det også nævnes, at LIKE kan gøre brug af et index
i mysql-tabellen (hvorimod hvis man bruger en funktion som fx LEFT(),
så bliver der ikke kigget på indexes). Det kan ligeledes være en
hastighedsoptimering - igen, hvis man arbejder med væsentligt store
mænger data, hvor flaskehalsen vil være forespørgslen.

--
- Peter Brodersen

Ugens sprogtip: bekræfte (og ikke bekræftige)

Ryan Kristensen (12-10-2003)
Kommentar
Fra : Ryan Kristensen


Dato : 12-10-03 23:54

> $res = mysql_query("select * from navne");
>
>
> while ($row = mysql_fetch_array($res)) {
>
>
> // hvis første bogstav fra kolonnen navn er lig a, så udskriv navn
> if ($row['navn'][0] == a) {
>
> echo .$row['navn']."<br />";
>
> }
> }

Jeg ville mene, at det er lidt dumt at lave det i PHP, når man kan lave det med en SQL-sætning.
Nu kender jeg hverken noget til PHP, mysql eller database generelt, men google plejer at kunne hjælpe.
SELECT * FROM navne WHERE navn LIKE 'a%'

--
Ryan





Christoffer Kjeldgaa~ (22-12-2003)
Kommentar
Fra : Christoffer Kjeldgaa~


Dato : 22-12-03 15:08


> SELECT * FROM navne WHERE navn LIKE 'a%'

Hvordan kan man så ved hjælp af mySQL vælge de første bogstaver (eller tal som det er i dette tilfælde)
hvor ordet starter med enten 0, 1, 2, 3, 4, 5, 6, 7, 8 eller 9? Altså det kan starte med flere
forskellige ting, men man bestemmer selv præcist hvad.

Christoffer Kjeldgaard Petersen

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

Jeppe Uhd (23-12-2003)
Kommentar
Fra : Jeppe Uhd


Dato : 23-12-03 13:46

Christoffer Kjeldgaard wrote:
>> SELECT * FROM navne WHERE navn LIKE 'a%'
>
> Hvordan kan man så ved hjælp af mySQL vælge de første bogstaver
> (eller tal som det er i dette tilfælde)
> hvor ordet starter med enten 0, 1, 2, 3, 4, 5, 6, 7, 8 eller 9? Altså
> det kan starte med flere
> forskellige ting, men man bestemmer selv præcist hvad.

SELECT LEFT(column,10) AS column FROM table WHERE column REGEXP
'^[0123456789]'

Burde kunne gøre det...

--
MVH Jeppe Uhd - NX



Jonas Delfs (23-12-2003)
Kommentar
Fra : Jonas Delfs


Dato : 23-12-03 17:49

"Christoffer Kjeldgaard" <christoffer@sappy.dk> skrev i en meddelelse
news:bs6tsn$hl1$1@sunsite.dk...
>
> > SELECT * FROM navne WHERE navn LIKE 'a%'
>
> Hvordan kan man så ved hjælp af mySQL vælge de første bogstaver (eller tal
som det er i dette tilfælde)
> hvor ordet starter med enten 0, 1, 2, 3, 4, 5, 6, 7, 8 eller 9? Altså det
kan starte med flere
> forskellige ting, men man bestemmer selv præcist hvad.

Hvem er "man"? Hvis det er bruger-valgt, har du det vel i en variable, og
fremgangsmåden er som ovenstående eksempel. Hvis det må være flere ting,
hvor "man" er scriptet, er fremgangsmåden som Jeppe nævner.

--
Mvh. Jonas Delfs
Freelance webprogrammør: http://delfs.dk



Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408534
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste