Avatar billede kurdo Novice
20. september 2007 - 09:38 Der er 14 kommentarer og
1 løsning

sæt begyndelses bogstav

hej....

jeg har lavet en hjemmeside hvor man kan tilføje en tekst...

men hvordan kan jeg gøre så php tager en navns forbogstav og sætter for bogstaver ind i databasen.... fx Ole= så sætter den O i databasen==????
Avatar billede rax Praktikant
20. september 2007 - 12:56 #1
Hvis du har strengen "Ole", så findes der en strengfunktion, som kan lave en ny streng basseret på den gamle.
Funktionen hedder substr() (står for substring), og bruges sådan her:

substr($streng_udgangspunkt, startindex, længde).

Så i dit tilfælde, kan du gøre således:

$forbogstav = substr("Ole", 0, 1);

$forbogstav vil nu have værdien "O", da substr() returnerer en ny streng startende fra plads nr. 0 (dvs. det første bogstav), og 1 tegn frem.

Hvis "Ole" ligger geme i en variable $fornavn, kan du naturligvis også gøre således:

$forbogstav = substr($fornavn, 0, 1);

Resultatet er igen, at $forbogstav nu har værdien "O"

Håber det hjalp :)
Avatar billede htx98i17 Professor
20. september 2007 - 13:05 #2
eller

INSERT INTO tabel (tekst) VALUES (LEFT($tekst,1))
Avatar billede htx98i17 Professor
20. september 2007 - 13:16 #3
eller

INSERT INTO tabel (tekst) VALUES (SUBSTR($tekst,1,1))
Avatar billede kurdo Novice
20. september 2007 - 14:36 #4
hejza raxx!
mange tak for svaret, lige det jeg manglede..

send et svar så du få point! :D
Avatar billede kurdo Novice
20. september 2007 - 14:37 #5
tak for svaret htx, men jeg brugte rax's! :)
Avatar billede htx98i17 Professor
20. september 2007 - 14:42 #6
helt ok :)
Avatar billede rax Praktikant
20. september 2007 - 15:20 #7
hehe selv tak da :)

nu er jeg ikke så ferm til at bruge sitet, men skal jeg blot skrive svaret en gang til, og sætte radioknappen i Svar istedet for Kommentar ? :)

- rax
Avatar billede kurdo Novice
20. september 2007 - 20:58 #8
præcis, bare en indlæg mere med radioknappen til svare! :) :)
Avatar billede terrak Nybegynder
20. september 2007 - 21:00 #9
Lige en kommentar fra sidelinjen:
$streng = "Ole";
$forbogstav = $streng{0};
giver samme resultat

- og rax, du skriver bare en tekst (f.eks. "svar") og ændrer radioknappen til svar som du selv siger.
Personligt synes jeg man bør vælge svar frem for kommentar, når man kommer med en formodet løsning, uanset om den er korrekt eller ej. Så er det bare op til spørger at afvise/acceptere i stedet for at bøvle med det til sidst :-)
Avatar billede rax Praktikant
21. september 2007 - 08:45 #10
Hvis du har strengen "Ole", så findes der en strengfunktion, som kan lave en ny streng basseret på den gamle.
Funktionen hedder substr() (står for substring), og bruges sådan her:

substr($streng_udgangspunkt, startindex, længde).

Så i dit tilfælde, kan du gøre således:

$forbogstav = substr("Ole", 0, 1);

$forbogstav vil nu have værdien "O", da substr() returnerer en ny streng startende fra plads nr. 0 (dvs. det første bogstav), og 1 tegn frem.

Hvis "Ole" ligger geme i en variable $fornavn, kan du naturligvis også gøre således:

$forbogstav = substr($fornavn, 0, 1);

Resultatet er igen, at $forbogstav nu har værdien "O"

## tilføjelse fra terrak ##
$streng = "Ole";
$forbogstav = $streng{0};
giver samme resultat
## end ##

terrak har fuldstændig ret i ovenstående, da strenge i PHP - som i mange andre sprog - opfattes som chararrays, hvorfor man kan referere til de enkelte index, og på den måde få fat i de enkelte tegn. Tag til terrak for tilføjelsen :)
Avatar billede kurdo Novice
21. september 2007 - 12:54 #11
mange tak igen rax, kunne du hjælper med et par ting som jeg har? da det er svært at skrive herind ? det er php.. vis du gad at hjælpe lidt over msn?
Avatar billede pidgeot Nybegynder
21. september 2007 - 13:01 #12
Lige en kommentar: $str{0} bliver deprecated i PHP6. I stedet bør man bruge $str[0].

*går igen*
Avatar billede terrak Nybegynder
21. september 2007 - 14:13 #13
pidgeot > Det var da rart at vide, men de burde nu rette deres eksempler på
http://php.net/substr
så de også afspejler denne ændring - og faktisk er brugen af $str{} allerede deprecated i PHP 5.1 (og opefter?) og helt væk i PHP 6, synes jeg at kunne læse mig til (http://www.corephp.co.uk/archives/19-Prepare-for-PHP-6.html)
Avatar billede rax Praktikant
21. september 2007 - 15:04 #14
kurdo: du er velkommen til at spørge løs :) min msn er rayden_dk@hotmail.com
Avatar billede pidgeot Nybegynder
21. september 2007 - 16:02 #15
Dit link til corephp skriver ganske rigtigt at den forsvinder, men datatypens dokumentation siger det blot bliver deprecated. E_STRICT fejlen er der for at gøre opmærksom på det vil ske.

Da de direkte skriver at Safe Mode forsvinder i PHP6, er det ikke umiddelbart nærliggende at tro der er tale om en misforståelse - men det kan jo ske de har ændret holdning siden dengang corephp-dokumentet blev skrevet.

Reference: http://dk.php.net/manual/en/language.types.string.php#language.types.string.substr
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester