Gebruikers met dezelfde naam weergeven
Ik heb een vraag: als mensen zich bij mij registreren met hun voornaam, in dit geval Roy, dan wil ik dat iedereen die van zijn voornaam ook Roy heet laten weergeven. Maar, niet met MySQL, maar met PHP.
Groetjes,
Roy
Topictitel aangepast. Kies in het vervolg zelf een relevante titel.[/modedit]
Gewijzigd op 02/02/2012 17:38:31 door Joren de Wit
Maare, wat je wil kan niet, tenzij je alle namen weg gaat schrijven in een bestand wat een database overbodig maakt.
Een databasebestand? Heb je een voorbeeldje?
Waar sla je alle gegevens op van mensen die zich hebben geregistreerd dan?
/users/Roy Bartman
/users/Bas van Veen
etc.
Waarom niet met MySQL? Een database is de plek waar je gegevens opslaat, PHP kan dit niet in zijn eentje. Of je met bestanden gebruiken met daarin XML o.i.d. maar dan sla je naar mijn mening de plank mis...
Edit:
per user een map aanmaken is niet juist. Daar kan je niks uithalen. Een DB bestandje met XML erin en per user wat gegevens erin stoppen is nog wel de beste manier, dan moet je werken met simpleXML. Maar dan kan iedereen gewoon bij de gebruikersnamen + wachtwoorden + emailadressen + alles. Dus dat is ook niet juist.
Met een DataBase (hoeft niet MySQL te zijn) kun je dit veel beter beschermen
@Joren, bedankt!
Met een DataBase (hoeft niet MySQL te zijn) kun je dit veel beter beschermen
@Joren, bedankt!
Gewijzigd op 02/02/2012 17:41:02 door Wouter J
Wouter J op 02/02/2012 17:38:13:
Roy, een titel geeft een korte samenvatting van het bericht. 10 uitroeptekens + alleen hoofdletters + geen echte tekst is dit totaal niet. Kun je dit niet aanpassen?
Offtopic:
Dat is inmiddels al gebeurd ;-)
Gewijzigd op 02/02/2012 17:39:44 door Joren de Wit
Hmm, dus ik kan niet bijvoorbeeld de 1e 8 karakters uit een gebruikersnaam "strippen"?
zoek eens op substr of explode :)
Kijk maar eens naar de explode functie en split een string dan op spaties ' ' het eerste woord in de array is de voornaam en de rest de achternaam:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
function getNames( $name )
{
$names = explode(' ', $name); // breek de tekst op in een array per spatie
$re = Array(); // maak van $re een array
$re['voornaam'] = $names[0]; // $re['voornaam'] is gelijk aan het eerste woord van $names
array_shift($names); // haal het eerste woord weg uit $names
$re['achternaam'] = implode(' ', $names); // plaats de spatie terug op alle andere items van $names en noem dat $re['achternaam']
return $re['achternaam']; // return de achternaam
}
$roy = getNames('Roy Bartman');
echo $roy['voornaam']; // 'Roy'
echo $roy['achternaam']; // 'Bartman'
echo 'hé, kun je doorgaan met php code als je de code tag al afgesloten hebt, maar php niet?';
?>
function getNames( $name )
{
$names = explode(' ', $name); // breek de tekst op in een array per spatie
$re = Array(); // maak van $re een array
$re['voornaam'] = $names[0]; // $re['voornaam'] is gelijk aan het eerste woord van $names
array_shift($names); // haal het eerste woord weg uit $names
$re['achternaam'] = implode(' ', $names); // plaats de spatie terug op alle andere items van $names en noem dat $re['achternaam']
return $re['achternaam']; // return de achternaam
}
$roy = getNames('Roy Bartman');
echo $roy['voornaam']; // 'Roy'
echo $roy['achternaam']; // 'Bartman'
echo 'hé, kun je doorgaan met php code als je de code tag al afgesloten hebt, maar php niet?';
?>
Gewijzigd op 02/02/2012 18:02:40 door Wouter J
Alvast heel erg bedankt! Ik ga er vanavond mee aan de slag!
Edit: nog iets heel stoms, ik wil ook graag de voornaam laten weergeven met die array :$
Toevoeging op 02/02/2012 18:53:29:
bump
Gewijzigd op 02/02/2012 18:15:48 door Roy Bartman
Slotje :)