fwrite lukt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mendix Ontwikkelaar - Vernieuwen van het applicati

Bedrijfsomschrijving De ontwikkelingen in de transportsector gaan razendsnel. Bij ons kun je een belangrijke rol spelen in deze sector. We streven ernaar om onze klanten te ontzorgen op het gebied van continuïteit en veiligheid met innovatieve producten en diensten. We willen dat onze klanten de veiligste vervoerders van Europa worden. Ons team werkt hard om deze ambitieuze doelstellingen te bereiken en we bieden een motiverende werkomgeving aan. We zijn op zoek naar zelfstarters met een focus op resultaat en beslissingsbevoegdheid. Functieomschrijving Als Mendix ontwikkelaar bij deze organisatie heb je een gevarieerde baan. Het applicatielandschap wordt vernieuwd en de “schade en

Bekijk vacature »

Junior PHP Developer

Dit ga je doen Software development met behulp van C# .NET en / of PHP, je mag zelf kiezen waar jij je in wil specialiseren Meedenken over het nieuwe pakket, waar moet het aan voldoen? Unit-, integratie- en diverse andere tests schrijven en uitvoeren Nauw samenwerken met je IT collega's zoals Testers, Developers, DevOps Specialisten en Architecten Jezelf ontwikkelen met behulp van trainingen en cursussen Hier ga je werken Onze klant, een grote speler in de medische sector, is op zoek naar een enthousiaste junior (of meer ervaren) Software Developer die klaar is voor een nieuwe stap in zijn of

Bekijk vacature »

Delphi developer

Functie Als Delphi developer ga jij aan de slag in een team met twee andere ervaren Delphi programmeurs waaronder de Hoofd programmeur. Als team zijn jullie verantwoordelijk voor de doorontwikkeling van jullie bestaande applicatie. Daarnaast zijn jullie verantwoordelijk voor het onderhouden van deze applicatie en het oplossen van eventuele bugs. Eisen - HBO werk en denk niveau; - Minimaal één jaar ervaring met Delphi; - Goede beheersing van de Nederlandse taal in woord en geschrift; - Jij bent zelfstandig, maar kan ook in team verband werken. Aanbod - €3000,-- €4000,- op basis van jouw kennis en ervaring; - 8% vakantiegeld;

Bekijk vacature »

C++ Ontwikkelaar

Functieomschrijving Ben jij als software ontwikkelaar toe aan een nieuwe uitdaging? Dan zoeken wij jou! Voor het maken van de procesbesturingssoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Ontwerpen, programmeren en testen van product aanpassingen; Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden, o.a. door middel van SCRUM; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Implementeren van nieuwe product

Bekijk vacature »

Java Developer (Training And Simulation)

Wat jij doet Je zou onze Java Developer zijn en nauw samenwerken met je Product Owner, Software System Engineer, Scrum Master en andere Developers. Samen draag je bij aan een multidisciplinair en zelf organiserend Agile team. De rol is zeer afwisselend en bestaat uit, maar is zeker niet beperkt tot: de-risk en prototype onbewezen simulatietechnologieën; simulatiekaders ontwikkelen voor gebruik door andere teams; je bent goed in het begrijpen van ingewikkelde ideeën; heeft de mogelijkheid om nauw samen te werken met grote internationale klanten, leveranciers en overheden om onze oplossingen, vastleggingsvereisten, enz. te definiëren en te presenteren. Ben jij het? Wij

Bekijk vacature »

PHP Developer

Functieomschrijving Wij zijn op zoek naar een PHP Developer met Laravel ervaring! Voor een groeiende werkgever in regio Breda zijn wij op zoek naar een medior PHP developer met Laravel ervaring. Je gaat aan de slag met het ontwikkelen van maatwerk software voor klanten in een specifieke markt. Als PHP developer ben je samen met een gemotiveerd team van 6 collega’s verantwoordelijk voor de ontwikkeling, beheer en het innoveren van informatiesystemen voor klanten in een specifieke branche. Als software developer ondersteun je complexe uitdagingen van klanten. Je brengt hun wensen in kaart en vertaalt deze door naar maatwerk software. Om

Bekijk vacature »

Medior/senior Python developer

Functie Bedrijven komen bij deze organisatie om technische vraagstukken op te lossen en hierin ook tot oplossingen te komen waar ze zelf misschien niet aan gedacht hadden. Jij gaat vanuit je ervaring dus niet alleen hands-on aan de slag met het ontwikkelen, maar zult ook zeker adviseren en proactief meedenken met de klant. Er zijn meerdere lange en/of korte projecten en het type klanten is heel uiteenlopend. Zo kun je terecht komen in een multidisciplinair scrumteam waarin je als Python developer meewerkt, of juist voor een kleiner (Greenfield) project aan de slag gaan waarin je veel breder bezig bent. Door

Bekijk vacature »

Back End Developer

As a Back End developer at KUBUS you will be developing the (web) application and services of BIMcollab. You have a focus on the back end of our software, for which we mainly work with C# and .NET. We use a full-stack approach, which means that in addition to the back-end, you will also help with other parts of the code. As a software company, KUBUS is in a unique position. We build our own products that are used by tens of thousands of users worldwide. Our company is just the right size: big enough to make a real impact

Bekijk vacature »

Back-end ontwikkelaar

Functie omschrijving Wil jij meebouwen aan diverse databasesystemen in een klein bedrijf met een platte organisatie? In een team van ruim 10 ontwikkelaars wordt er aan diverse ICT oplossingen gewerkt. Jouw taken hierbij zullen bestaan uit: Het onderhouden en door-ontwikkelen van bestaande databases. Denk hierbij aan schema verbeteringen en performance-tuning. Bij nieuwe ontwikkelingen ga jij ook bezig met het bouwen van het databaseschema. Omdat je in een klein team werkt zal je ook de C# routine verder uitbouwen en ontwikkelen. Ook kan je meedraaien in algemene refactory-, ontwikkel- of testwerkzaamheden. Je zal voornamelijk gebruik maken van de volgende technieken: .NET

Bekijk vacature »

Front end ontwikkelaar

Functie Het huidige team bestaat uit momenteel uit 5 back end developers verdeeld van senior tot junior. Omdat de gehele front end van applicaties anders gaan insteken zijn ze op zoek naar een ervaren Front end developer die hen kan helpen de juiste keuzes te maken. Je krijgt veel vrijheid om te bepalen hoe je dit wilt ontwikkelen en vrijheid in welke techniek je hiervoor wilt gebruiken. Je zult je dus bezighouden met architectuur, documentatie en natuurlijk ontwikkeling van nieuwe functionaliteiten binnen de verschillende applicaties. natuurlijk heb jij ook mogelijkheden om te sparren binnen het team, maar ze gaan uit

Bekijk vacature »

.NET developer

Functie Als .NET ontwikkelaar ga jij aan de slag bij een van onze klanten actief in de High Tech Industrie. Onze klanten zijn voornamelijk gelokaliseerd in de omgeving van Eindhoven. Wij zijn erg selectief als het gaat om de projecten die wij accepteren en richten ons dan ook alleen op innovatieve en complexe projecten. Omdat onze klanten voornamelijk gespecialiseerd zijn in de machinebouw, werk jij ook vaak dicht tegen de machines aan. Ons team bestaat momenteel uit Embedded engineers, IOT developers en Cloud engineers. Wij werken voornamelijk aan Microsoft projecten waar er gebruik wordt gemaakt van WPF, UWP, .NET Core

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 »

Software Developer / .NET / Azure

Dit ga je doen Als Lead .NET Software Developer zal je je bezig houden met: Het vertalen van bedrijfswensen naar een technische roadmap; Uitwerken van nieuwe architectuur / designs; Het team aansturen en motiveren; Toezien op de kwaliteit van de code; Mee ontwikkelen van nieuwe features en applicaties. Hier ga je werken Deze organisatie is op dit momenteel marktleider in het ontwikkelen van productielijnen voor de voedselindustrie en heeft een wereldwijd klantnetwerk. Binnen deze organisatie is het team van software developers dagelijks bezig met het ontwikkelen van maatwerk oplossingen om alle productiemachines aan te sturen, maar ook bedrijf kritische applicaties

Bekijk vacature »

Python developer Consultancy

Functie Als Python developer bij deze organisatie werk je voor verschillende klanten. Doordat de oprichter een groot netwerk heeft kun je zelf voorkeuren uitspreken in het type projecten dat je wilt gaan doen. Zo zijn er bijvoorbeeld langdurige of juist korte projecten, maar is ook het type klant, of project bespreekbaar. Werk jij bijvoorbeeld graag aan een nieuw, state-of-the-art web portaal of ben je liever betrokken bij een migratietraject van een bestaande applicatie? Wij gaan voor jou aan de slag! Eisen • Je bent een gedreven developer met sterke voorkeur voor Python • Je bent meer dan een codeklopper •

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer .NET, C# voor een gaaf bedrijf in de omgeving van Utrecht! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Lees dan snel verder! Voor een opdrachtgever in de omgeving van Utrecht, zijn wij op zoek naar een Junior Software Developer. Werk jij graag aan verschillende projecten en ga je graag klanten op bezoek? Dan is dit de ideale functie voor jou! Binnen deze functie

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 16:30:39
 
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.