fwrite lukt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Javascript developer

Functie Het platform is gebouwd in een moderne JavaScript stack, die gebruikt maakt van:  React.js  Redux  TypeScript  Node.js  Google Cloud functions (node.js)  Semantic UI Alle code wordt getest en beoordeeld door collega developers. De continuous integration pipeline maakt het mogelijk om elke dag waarde te leveren aan hun klanten. Het ontwikkelproces is pragmatisch en gebaseerd op Scrum. Wat je zult doen: Ten eerste kun je nadrukkelijk jouw eigen stempel drukken op de technologie, het product en de cultuur van het bedrijf. Je bent bezig met het uitwerken van de architectuur van nieuwe functionaliteiten op

Bekijk vacature »

Software Ontwikkelaar PHP

Functie omschrijving Software Ontwikkelaar PHP gezocht! Wij zijn op zoek naar een ervaren PHP Software Ontwikkelaar om het team van onze opdrachtgever te versterken! De ideale kandidaat zal fungeren als verlengstuk van klanten en complexe technische vraagstukken met enthousiasme benaderen. Naast het werken met de nieuwste technologieën, ben je in staat om aan meerdere projecten tegelijkertijd te werken. Als je deze uitdaging aangaat, werk je nauw samen met front-end developers en draag je bij aan het realiseren van grote veranderingen bij klanten. Het bedrijf zoekt iemand die zichzelf graag uitdaagt en altijd streeft naar het leveren van de beste resultaten.

Bekijk vacature »

Back-end developer (Magento2)

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

Fullstack Software Developer

Functieomschrijving Voor een ambitieuze werkgever in regio Roosendaal zijn wij op zoek naar een Full Stack C#.NET Developer. Als software programmeur ben je verantwoordelijk voor het bouwen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines uit te lezen en deze data om te zetten in management informatie voor jullie klanten. Taken en verantwoordelijkheden: Verder ontwikkelen en onderhouden van webapplicaties, dashboards en apps voor de eigen IOT-oplossingen; Testen en goedkeuren van de software; Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks,

Bekijk vacature »

Informeel bureau zoekt Senior PHP developer

Functie Als senior PHP developer neem je het voortouw in ontwikkeltrajecten en ben je in staat werk uit te leggen aan collega’s om zo je kennis met hen te delen. Je deinst niet terug voor ingewikkelde projecten. Deze zie jij alleen maar als uit uitdaging. Je werkt doorlopend aan klantcases (en hierdoor je klant echt leert kennen), maar toch ben je afwisselend bezig. Dit alles in een vrije en ontspannen werksfeer, met een team van gelijkgestemde. Binnen de development teams werken ze met o.a. PHP, Laravel, React, Node, Elastic, Amazon AWS, JIRA, Solid, Domain-driven-design, Doctrine, Redis, docker, Kubernetes, CI, PHP

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »

Backend developer

Functie omschrijving Ben jij graag bezig met de back-end van applicaties? Zou je dit graag willen doen voor een kleine werkgever waar ook tijd is voor een drankje op zijn tijd? Je taken hierbij zullen bestaan uit: Gebruik maken van de volgende technieken: .NET (core), C#, SQL, XML, MVC, JSON, REST & SOAP API. Gebruik maken van de volgende tools: Visual Studio, GIT, Jira, Jenkins. Bovengenoemde technieken en tools ga je gebruiken om: Nieuwe functionaliteiten te ontwikkelen. Wijzigingsverzoeken van klanten uitvoeren. Verzorgen van koppelingen tussen data. Bedrijfsprofiel Jouw nieuwe werkgever bevindt zich in regio Raamdonksveer en bieden oplossingen op gebied

Bekijk vacature »

Back end developer PHP

Functie Heb jij altijd al eens bij een bedrijf willen werken waar jij géén nummertje bent, die alleen maar uitvoerend werk doet? Dan zou je hier perfect passen! Tuurlijk, je werkt aan projecten voor grote of kleine bedrijven… Het enige verschil hier is, jouw mening telt hier écht. Jouw inbreng wordt gewaardeerd, serieus genomen en gebruikt. En vergeet niet, je werkt niet alleen aan deze projecten. Er werken in totaal ruim 25 developers en designers, onderverdeeld over 3 development teams. Voornamelijk bestaande uit Medior en Senior developers, die samen voor een inspirerende en ambitieuze omgeving zorgen. Hun visie is namelijk

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

TypeScript developer (tot € 6.000, - bruto pe

Functie Om bovenstaande ambities waar te kunnen maken zijn ze op zoek naar een ervaren Typecript developer die niet alleen zichzelf verder ontwikkelt, maar het ook leuk vinden om op termijn meer junior collega’s op pad te helpen. Je zult aan de slag gaan met het migreren van hun bestaande UI in Angular. Maar ook het ontwikkelen van een mobiele app. Hierbij hechten ze veel waarde aan User Experience en kiezen ze duidelijk voor kwaliteit i.p.v. snelheid. Je krijgt dus de ruimte om vanuit gedegen onderzoek te werk te gaan en het borgen van kwaliteit staat hoog in het vaandel.

Bekijk vacature »

Front end developer binnen de consultancy

Functie Je komt in een team met ambitieuze developers die de passie voor Front-End met jou delen. Samen ga je aan de slag met leuke en leerzame opdrachten. Het team heeft een eigen budget en financiën en zij bepalen zelf hoe dat besteed en investeert wordt. Je gebruikt tools als JavaScript, Node.js, React, Angular, Typescript en Vue.js wanneer je werkt aan de opdrachten. Daarnaast zul je veel leren van je collega’s en gezamenlijk een leuke tijd doorbrengen tijdens activiteiten zoals wintersport, hackatons en conferentiebezoeken. Je krijgt niet alleen de mogelijkheid Front-End te ontwikkelen, maar ook vooral jezelf. Dit kan behaald

Bekijk vacature »

Back-end Developer

Functie omschrijving Als Back-end Developer heb je de eer om als eerste interne developer bij deze organisatie te beginnen. Op dit moment zijn er externe developers, maar daar wil de organisatie verandering in brengen. Op termijn moet de gehele afdeling uit intern personeel bestaan. Je kan je voorstellen dat de eerste interne developer ook de nodige kennis mee moet brengen. Dat klopt. Je gaat je namelijk aan het begin bekommeren over de externe developers en uiteindelijk over je interne collega's. Verder ga je het volgende doen: Het bedenken, beheren en onderhouden van webportalen, API-koppelingen en applicaties; Je bedenkt en werkt

Bekijk vacature »

Fullstack Software Developer

Bedrijfsomschrijving Functieomschrijving Java ontwerpen, bouwen en testen (T-shaped). Als senior ontwikkelaar ben je bekend in zowel de back-end als de frontend van een applicatie. Angular, Continious Delivery / Integration. Een ervaren iemand die de leiding kan nemen, een weg vindt in nieuwe situaties, en in oude applicaties. Initiatiefrijk, bekend met de (technische) omgevingen die we bij duo gebruiken, niet te beroerd om collega’s te helpen. Als senior programmeur in staat om op te treden als lead programmeur. Ondersteunt de testers bij de testautomatisering en minder ervaren programmeurs bij dagelijks werkzaamheden. Dit laatste met name op het gebied van Angular. Achtergrond

Bekijk vacature »

Python Developer

Dit ga je doen Als Python Developer ben je verantwoordelijk voor: Het ontwikkelen van Stuurprogramma's in Python zodat er verbindingen kunnen worden gelegd tussen besturingssystemen en (AV) hardware; Het testen en debuggen van Stuurprorgamma's; Het communiceren met noodzakelijke partijen in gevallen waar extra technische details nodig zijn om een Stuurprogramma te ontwikkelen of problemen op te lossen; Het maken van de nodige technische documentatie (in het Engels); Het participeren in een Scrum/Agile omgeving. Hier ga je werken Deze internationale organisatie is wereldwijd een succesvol producent en leverancier van professionele AV hard- en software. Klanten gebruiken de producten o.a. voor het

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Pagina: 1 2 volgende »

Klaas vieren

klaas vieren

02/01/2011 23:13:37
Quote Anchor link
Het werkt niet. Het zou een bestand moeten opslaan met de input die je invult. Echter slaat het wel een bestand op, maar dan zonder gegevens die je invoert...? Iemand weet?

aanmelden.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<form action="accountaanmaken.php"
method="post">

<table border='1' >
<caption>
<strong>Aanmeldingsformulier</strong>
</caption>

<tr>
<td>Achternaam: </td>
<td><input type="text" name="achternaam"></td>
<tr>
<td>Naam: </td>
<td><input type="text" name="naam"></td>
</tr>
<tr>
<td>Adres: </td>
<td><input type="text" name="adres"></td>
</tr>
<tr>
<td>Postcode: </td>
<td><input type="text" name="postcode"></td>
</tr>
<tr>
<td>Plaats: </td>
<td><select name="plaats">
<option value=""></option>
<option value="Amsterdam">Amsterdam</option>
<option value="Den haag">Den haag</option>
<option value="Rotterdam">Rotterdam</option>
<option value="Utrecht">Utrecht</option></select></td>
</tr>
<tr>
<td>email adres: </td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td>Gebruikersnaam: </td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord: </td>
<td><input type="text" name="wachtwoord"></td>
</tr>
</table>

<br />
<input type="submit" value="verzenden"><br />
<input type="reset" value="reset">

</form>



accountaanmaken.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php

$bestand
=fopen("gebruikers.txt","w");
if(!$bestand)
{

echo("Kon geen bestand openen!");
}


fwrite($bestand, $outputtekst, strlen($outputtekst));

$outputtekst =
$_POST["achternaam"] . $_POST["naam"] . "\t" .
$_POST["naam"] . "\t" .
$_POST["adres"] . "\t" .
$_POST["postcode"] . "\t" .
$_POST["plaats"] . "\t" .
$_POST["email"] . "\t" .
$_POST["gebruikersnaam"] . "\t" .
$_POST["wachtwoord"] . "\n";

if(fclose($bestand))
{

echo("Account is aangemaakt.");
}

else
{
echo("Kon bestand niet afsluiten!");
}

?>
Gewijzigd op 02/01/2011 23:14:32 door Klaas vieren
 
PHP hulp

PHP hulp

25/04/2024 09:33:20
 
Pim -

Pim -

02/01/2011 23:17:59
Quote Anchor link
Omdat je $outputtekst pas vult nadat je hebt geschreven...
Maar gebruik toch gewoon een DB...
 
Write Down

Write Down

02/01/2011 23:19:26
Quote Anchor link
Fout is zoals Pim aangeeft, je schrijft niks weg.

Maar inderdaad, ik mag er niet aan denken dat je dit soort gegeven in txt bestand gooit...
 
Klaas vieren

klaas vieren

02/01/2011 23:23:02
Quote Anchor link
Beste mensen, ik wou net reactie toevoegen dat het me gelukt is!

@Pim, sorry, ik moet me echt houden aan deze "trashcode" omdat het voor school is en moet alle richtlijnen gebruiken van de opdrachten..

@write down zie mijn voor school reactie! Dank je.
 
Pim -

Pim -

02/01/2011 23:26:54
Quote Anchor link
Wow, lekker onderwijs xD
 
Klaas vieren

klaas vieren

02/01/2011 23:32:11
Quote Anchor link
Nog een probleem tegengekomen..

ik heb nu de volgende code die werkt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php

$outputtekst
=
$_POST["achternaam"] . $_POST["naam"] . "\t" .
$_POST["adres"] . "\t" .
$_POST["postcode"] . "\t" .
$_POST["plaats"] . "\t" .
$_POST["email"] . "\t" .
$_POST["gebruikersnaam"] . "\t" .
$_POST["wachtwoord"] . "\n";

$bestand=fopen("gebruikers.txt","w");
if(!$bestand)
{

echo("Kon geen bestand openen!");
}


fwrite($bestand, $outputtekst, strlen($outputtekst));




if(fclose($bestand))
{

echo("Account is aangemaakt.");
}

else
{
echo("Kon bestand niet afsluiten!");
}


?>


Maar nu is het probleem. De eerste en alleen de eerste wordt opgeslagen. Als ik nu nog een keer aanmeld, in plaats dat het zich toevoegt, dan wijzigt het gewoon de gegevens die al erin stonden. Het is de bedoeling om die dan ook in het tekst bestand op te slaan... weet iemand?

Toevoeging op 02/01/2011 23:32:46:

Pim - op 02/01/2011 23:26:54:
Wow, lekker onderwijs xD


Hahah, niet dus!
 
Pim -

Pim -

02/01/2011 23:34:29
Quote Anchor link
$bestand=fopen("gebruikers.txt","w");
w moet zijn a (van append)
 
Klaas vieren

klaas vieren

02/01/2011 23:34:54
Quote Anchor link
Heb het al jongens, het moest de "a" ipv de "w" zijn! Ik zal zo nog even iets plaatsen over hoe ik die tekst moet laten verschijnen en hoe ik die tekst kan gebruiken om in te loggen!

Toevoeging op 02/01/2011 23:35:38:

Hoi Pim, dank je voor je reactie! Ben 20 seconden te laat :P

Toevoeging op 02/01/2011 23:38:32:

Pim. nog een vraagje

ik heb deze code
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$outputtekst
=
$_POST["achternaam"] . $_POST["naam"] . "\t" .
$_POST["adres"] . "\t" .
$_POST["postcode"] . "\t" .
$_POST["plaats"] . "\t" .
$_POST["email"] . "\t" .
$_POST["gebruikersnaam"] . "\t" .
$_POST["wachtwoord"] . "\n";
?>


Nu kamp ik met twee probleempjes. Als ik een toevoeg, dan komt het niet op de nieuwe regel te staan? Terwijl vanaf wachtwoord "\n" staat. En de tweede vraag, hoe kan ik een spatie neerzetten voor de naam en achternaam? Dus in plaats van dat in de tekst komt te staan: KlaasVieren moet zijn Klaas Vieren..?




Toevoeging op 03/01/2011 00:01:21:

Gelukt! Ik moest \r\n gebruiken ipv alleen \n. Nu alleen nog de spatie tussen de namen.. hm

Toevoeging op 03/01/2011 00:05:39:

ach heb gewoon " " . gebruikt voor de spatie. Kan denk ik niet anders..

Zo, hoppa naar de volgende probleem, maar nu eerst beetje slapen haha. Fijne avond iedereen
 

03/01/2011 09:31:12
Quote Anchor link
Hoe zijn die richtlijnen precies dan. Als het in een tekstbestand moet, dan kan xml ook, zie dom en simplexml.
 
Kris Peeters

Kris Peeters

03/01/2011 10:42:32
Quote Anchor link
Je hebt die fwrite helemaal niet nodig.

Het enige wat je nodig hebt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$filenaam
= 'test.txt';
$output = '...';  // maar dan iets zinnigers
$aantal_bytes_geschreven = file_put_contents($filenaam, $output);
?>
 
Write Down

Write Down

03/01/2011 11:32:02
Quote Anchor link
Kris Peeters op 03/01/2011 10:42:32:
Je hebt die fwrite helemaal niet nodig.

Het enige wat je nodig hebt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$filenaam
= 'test.txt';
$output = '...';  // maar dan iets zinnigers
$aantal_bytes_geschreven = file_put_contents($filenaam, $output);
?>


Wat je zegt klopt niet helemaal. Met beide functies kan hetzelfde bereikt worden. Fwrite is iets lastiger te gebruiken, het vereist meer parameters. Maar, fwrite is daardoor net iets effectiever. Die effectiviteit vertaalt zich in tijdswinst. Bij grotere hoeveelheden data is dit zeker en vast een interessant punt.

Omdat het hier voor relatief weinig data is, en aan de normen te zien die je school stelt, zou je toch kunnen opteren voor file_puts_contents. Ik zou zeggen, bekijk het is, vraag desnoods even na op school of ze kiezen voor prestatie of niet.
 
Kris Peeters

Kris Peeters

03/01/2011 12:38:10
Quote Anchor link
Mensen die niet goed weten hoe fwrite werkt, zijn beter af met file_put_contents.
Wie er wel voordeel uit kan halen, zal hier geen problemen over melden.

Ik blijf dus bij mijn boodschap.
 
Klaas vieren

klaas vieren

03/01/2011 21:01:58
Quote Anchor link
@Karl karl. Ik moest dus in het tekstbestand gewoon de input te zien krijgen. Alleen heb ik een spatie tussen naam en achternaam geplaatst door "" . te zetten. Voor de enter heb ik \r\n gebruikt.

@Kis peeters, hartstikke bedankt voor het laten zien hoe het ook efficienter kan. Echter moet ik toch echt aan de richtlijnen krijgen van de opdracht (voor school).

@write down, ja dat klopt! Dank u wel. Het is denk ik juist de bedoeling van de leraar om vanaf het basis te beginnen en (nog) niet verder ingewikkeld te doen.

Graag zou ik van jullie hulp krijgen van het volgende:
Ik moet nu met $bestand=fopen("gebruikers.txt", "r"); werken én met "fgets". Én ik moet een bestand lezen zodat ik kan inloggen met fgetscsv

Kunnen jullie masters mij hiermee helpen? Ik vind het echt prachtig om te coderen en hoop dat ik ook zo ervaren word!

Toevoeging op 03/01/2011 21:14:02:

Heren (en dames) het is me gelukt om een pagina aan te maken die het kan weergeven. Nu ga ik even sleutelen hoe ik het kan gebruiken om in te loggen in een pagina! Als iemand me ermee wilt helpen, please! Thanks.
 
Write Down

Write Down

03/01/2011 21:37:58
Quote Anchor link
Klaas, misschien is het wel geen slecht idee om even te zeggen wat je opdracht precies is.

Eigenlijk ga je iets zoeken in je txt-bestand. Je zoekt de gegevens van de gebruikers. Indien je "zoekopdracht" een resultaat geeft, dan kloppen de gegevens. Indien er geen resultaat is, dan is geen gebruiker gevonden met het bijhorende wachtwoord.

Stel de gebruiker zijn gegevens controleert en ze kloppen, dan kan je de "geheime" content weergeven.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
if(....) {
//alle controles geslaagd, de persoon is ingelogd
echo 'hier de "geheime" inhoud';
}
else {
echo 'sorry, je bent niet ingelogd';
}

?>


Nu, je zal het misschien nog niet zien, maar als deze pagina wordt herladen dan is de persoonlijk niet meer ingelogd. Je hebt namelijk nergens opgeslaan dat de persoon is ingelogd. Hiervoor bieden sessies een oplossing. (google er eventueel is op) Het komt erop neer dat je in die sessie iets plaatst zodanig dat je kan zien of een gebruiker al dan niet is ingelogd. Je dient voor de veiligheid nog andere zaken erin te zetten. (bv. het IP) Wat je precies allemaal in de sessie stopt, is jouw keuze. Er zijn op internet zat genoeg tutorials over te vinden. De gegevens van de sessie dien je dan op elke beveiligde pagina na te kijken. Hiermee kan je dan bepalen of een gebruiker al dan niet is ingelogd. (en door controle op het IP kan je stoute mensjes tegen gaan)

Wat betreft fgets etc, heb ik even iets gegoogeld. Klikje Ik denk dat deze site een vrij duidelijk voorbeeld geeft het hoe werkt. Je kan er ook altijd is de PHP manual op nakijken. Bij de reacties staan geregeld erg duidelijke voorbeelden, of zelfs volledige scripten.

Het zou kunnen dat ik wat zaken ben overgeslagen, of dat mijn uitleg niet altijd even duidelijk is. Als je iets niet begrijpt, vraag het even.
Gewijzigd op 03/01/2011 21:38:34 door Write Down
 
Klaas vieren

klaas vieren

03/01/2011 22:33:46
Quote Anchor link
@write down, dank je voor je uitgebreide uitleg! Ik heb het volgende:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<form action="<?php echo $_SERVER['PHP_SELF']; ?>"
method="post">

Gebruikersnaam: <input type="text" name="gebruikersnaam"><br />
Wachtwoord: <input type="text" name="wachtwoord"><br /><br />

<input type="submit" value="versturen">
</form>
<?php

$bestand
=fopen("gebruikers.txt","r");
if($gebruikersnaam && $wachtwoord)
{

echo("Weh feena Mootje");
}

else
{
echo("Uw moet zich eerst registreren");
}

$account = fgetcsv($bestand, 100, "\t");


fclose($bestand);
?>


Wat betreft sessies! Ook bedankt voor de uitgebreide uitleg, dat zal mijn volgende opdracht zijn haha..

Nou Write Down, als je me kunt helpen of laten zien wat ik fout doe bij het script boven.. graag!

Het is dus de bedoeling dat wanneer iemand inlogt, gelezen wordt in het .txt bestand of die wel bestaat, dan de volgende melding te geven: welkom, anders, je moet je registreren (ofzoiets).

Misschien dat het helpt als ik erbij zeg dat gebruikersnaam en wachtwoord gewoon $gebruikersnaam en $wachtwoord zijn..



Toevoeging op 03/01/2011 22:53:11:

Ps. het .txt bestand heet nog steeds gebruikers.txt.. moet ik die veranderen in account?
Gewijzigd op 03/01/2011 22:41:45 door klaas vieren
 
Klaas vieren

klaas vieren

05/01/2011 22:46:19
Quote Anchor link
?
 
Write Down

Write Down

05/01/2011 23:32:41
Quote Anchor link
Even geduld, ik ben aan het kijken :-)

Toevoeging op 05/01/2011 23:35:08:

Kan je me even een voorbeeld van je txt bestandje tonen?



Toevoeging op 06/01/2011 00:48:11:

Nou ja, ik kon niet wachten :+

Ik ben er vanuit gegaan dat je op de even lijnen (0, 2, 4, ...) gebruikersnaam hebt staan, de oneven wachtwoord.

Om je gebruikers toch een beetje te privecay te geven, heb ik ze met sha1-hash beveiligd.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
echo sha1(sha1($gebruiker)) . '<br/>;
echo sha1($password);
?>


Ik heb wat liggen te verzinnen. De user waarover het gaat is "Klaas" met wachtwoord "phpHulp". Wat de anderen zijn doet niet zo veel ter zake.

Mijn user-bestand ziet er als volgt uit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
0757ddb029ec7d9bfbea3f024ccf6e5c871ffb77
78c87b0ed4de64f81776a289f8ccefe1d477ee0
27106d45edd11b64a6ea5d59bc179ae31289ae15
4543d8f93fae1e28a4be5e56228422427f2376c0
e03fdeae52d00891c4371242c688597e5c2cc632
f7a39bf5f111ef862e861526d28dc8c99d4231ea
a1e2991ae2ba42fa48de603133084f71e0746689
b3d123ab1c64a495968f04c543e658701e1951e0


Hierin staat dus ergens jouw login.

Wat ik ga doen is dit bestand lijn per lijn uitlezen. Ik ga die waarden dan ook in array stoppen. De key van de array is gewoon het vorige getal + 1 (beginnend van 0). Hierdoor weet je dus dat de lijn onder een gebruikersnaam het wachtwoord is. Of ook, dat de key vermeerder met 1 het bijhorende wachtwoord is van de gebruiker.

We zoeken bv. de gebruiker "Klaas". Indien die bestaat, weet ik graag de bijhorende key. Als ik die key heb, weet ik dat de key vermeerderd met 1, de bijhorende wachtwoord-key is van de gebruiker "Klaas". Als ik door middel van die key de value bepaal, deze vergelijk met het ingevulde wachtwoord (POST), kan ik bepalen of de combinatie al dan niet klopt. Dan zijn we er hé!

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$search_user
= 'Klaas';
$search_pass = 'phpHulp';

$handle = @fopen("users.txt", "r");
if ($handle) {
    $counter = 0;
    while (($line = fgets($handle, 4096)) !== false) {
        $combination[$counter] = trim($line);
        $counter++;
    }

    if (!feof($handle)) {
        echo 'fgets lukt niet :-(';
    }

    fclose($handle);
}


$key = array_search(sha1(sha1($search_user)), $combination);
if(trim($combination[$key+1]) == sha1($search_pass)) {
    echo 'De gegevens kloppen!';
}
else {
        echo 'Foute gegevens!';
}

?>


Ik denk dat je hiermee al aan de slag kan. Moest je er niet uitkomen, ask!
 
Klaas vieren

klaas vieren

10/01/2011 14:34:07
Quote Anchor link
WriteDown, EXCUSES voor de late reactie! Dank u wel voor het schrijven van de code ziet er goed uit. Echter moet ik me strikt aan de richtlijnen houden van school :-(

Ik heb de volgende codes:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<html>
<head>
<title>Mijn php script</title>
</head>
<body>
<h3>Voorbeeld van een inlog script</h3>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>"
method="post">

Gebruikersnaam: <input type="text" name="gebruikersnaam"><br />
Wachtwoord: <input type="text" name="wachtwoord"><br /><br />

<input type="submit" value="versturen">
</form>

<?php

$bestand
=fopen("gebruikers.txt","rb");
if($gebruikersnaam && $wachtwoord)
{

echo("Hoi hoi");
}

else
{
echo("Uw moet zich eerst registreren");
}

$account = fgetcsv($bestand, 100, "\t");


fclose($bestand);



?>




</body>
</html>


mijn bestand heet gebruikers.txt het is heel simpel (easy said haha..). Het moet gewoon ervoor zorgen dat het het bestandje leest en kijkt of de gebruikersnaam en wachtwoord klopt. Hiervoor had ik deze pagina gemaakt (waar je dus kunt aanmelden):

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<html>
<head>
<title>Mijn php script</title>
</head>
<body>


<form action="accountaanmaken.php"
method="post">

<table border='1' >
<caption>
<strong>Aanmeldingsformulier</strong>
</caption>

<tr>
<td>Achternaam: </td>
<td><input type="text" name="achternaam"></td>
<tr>
<td>Naam: </td>
<td><input type="text" name="naam"></td>
</tr>
<tr>
<td>Adres: </td>
<td><input type="text" name="adres"></td>
</tr>
<tr>
<td>Postcode: </td>
<td><input type="text" name="postcode"></td>
</tr>
<tr>
<td>Plaats: </td>
<td><select name="plaats">
<option value=""></option>
<option value="Amsterdam">Amsterdam</option>
<option value="Den haag">Den haag</option>
<option value="Rotterdam">Rotterdam</option>
<option value="Utrecht">Utrecht</option></select></td>
</tr>
<tr>
<td>email adres: </td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td>Gebruikersnaam: </td>
<td><input type="text" name="gebruikersnaam"></td>
</tr>
<tr>
<td>Wachtwoord: </td>
<td><input type="text" name="wachtwoord"></td>
</tr>
</table>

<br />
<input type="submit" value="verzenden"><br />
<input type="reset" value="reset">

</form>
<?php

?>



</body>
</html>
en deze bestand moet het verwerken (aanmelden dus een externe bestand)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<html>
<head>
<title>Mijn php script</title>
</head>
<body>
<h3>Gegevens verwerken</h3>

<?php

$outputtekst
=
$_POST["achternaam"] . " " . $_POST["naam"] . "\t" .
$_POST["adres"] . "\t" .
$_POST["postcode"] . "\t" .
$_POST["plaats"] . "\t" .
$_POST["email"] . "\t" .
$_POST["gebruikersnaam"] . "\t" .
$_POST["wachtwoord"] . "\r\n";

$bestand=fopen("gebruikers.txt","a");
if(!$bestand)
{

echo("Kon geen bestand openen!");
}


fwrite($bestand, $outputtekst, strlen($outputtekst));

if(fclose($bestand))
{

echo("Account is aangemaakt.");
}

else
{
echo("Kon bestand niet afsluiten!");
}


?>

</body>
</html>
 
Kris Peeters

Kris Peeters

10/01/2011 15:33:42
Quote Anchor link
Klaas vieren op 10/01/2011 14:34:07:
Echter moet ik me strikt aan de richtlijnen houden van school :-(


Wat zijn die?
Wat is precies wel gevraagd (Wat moet er zeker in zitten)?
Wat mag niet? (mag je bv. file_put_contents() gebruiken (zie mijn vorige post) ?)

Trouwens, na alle reacties... wat is jouw vraag nu?
Werkt het ondertussen?
Gewijzigd op 10/01/2011 16:00:07 door Kris Peeters
 
Klaas vieren

klaas vieren

10/01/2011 16:08:14
Quote Anchor link
@Kris peeters,

nee het werkt nog niet. Misschien als je even die bestanden kunt kopieeren en plakken dat je dan kunt zien wat ik bedoel?

Het zit namelijk zo:

Het aanmelden.php werkt wel. Dan slaat het een bestand op. Deze bestand moet ik nu in inloggen.php lezen als de gebruikersnaam en wachtwoord kloppen (uit het bestand dus die is aangemaakt), dan zou er welkom moeten staan. Anders registreer jezelf ofzo.

Het enige wat ik mag gebruiken staat in de code.. dus fgetscsv en fopen..
 
Kris Peeters

Kris Peeters

10/01/2011 17:08:24
Quote Anchor link
Dit zou moeten doen wat je vraagt.
Zie eens of je er zo iets mee bent.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
// eerst zien of er iets gepost is
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  $bestand=fopen("gebruikers.txt","r");
  $message = "";
  // doorloop elke lijn
  while (($data = fgetcsv($bestand, 100, "\t")) !== FALSE) {
    // hier is $data dus een array die informatie bevat van 1 lijn.  $data[0] is het eerste veld, $data[1] het tweede, ...
    if (
      $data[5] == $_POST['gebruikersnaam']
      &&
$data[6] == $_POST['wachtwoord']
    ) {

      $message = "Hoi hoi";
      break;
    }
  }

  fclose($bestand);
  if (empty($message)) {
    $message = "Uw moet zich eerst registreren";
  }

  echo $message;
}

else {  // inlogformulier tonen
  echo '
<form action="" method="post">
  Gebruikersnaam: <input type="text" name="gebruikersnaam"><br/>
  Wachtwoord: <input type="text" name="wachtwoord"><br /><br/>
  <input type="submit" value="versturen">
</form>
'
;
}

?>
Gewijzigd op 10/01/2011 17:14:59 door Kris Peeters
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.