fwrite lukt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

VB.NET developer

Functie Het development team waar jij in terecht komt bestaat uit twee ervaren software developers. De directeur/eigenaar is tevens één van deze developers. Jij werkt direct samen met jouw werkgever en kan dan ook veel kennis en ervaring bij dit bedrijf op doen. Als team zijn jullie verantwoordelijk voor de kantoorapplicatie die deze organisatie aanbied in een niche markt. Het team is op dit moment actief bezig met een migratie waarbij het eindstation eindigt in een C# .NET omgeving. Echter is een deel van de software al geschreven in C# .NET. Hierbij is gebruik gemaakt van C# .NET, CSS, HTML,

Bekijk vacature »

Frontend Developer - Leeuwarden

Frontend Developer – Leeuwarden Als Frontend Developer bouw jij mee aan het onderwijs van de toekomst! In een scrum team werken met jonge en enthousiaste collega’s, moderne technieken, ruimte voor eigen ontwikkeling en op een proactieve wijze kunnen meewerken aan innovatie binnen het onderwijs. Magister is het state-of-the-art softwarepakket dat scholen in het voortgezet onderwijs op alle fronten ontzorgt. Van leerlingenadministratie tot het ondersteunen van individuele leerlijnen, van toegang tot digitaal lesmateriaal tot het plannen van het lesrooster. In de Magister app bedient Magister ruim 2,5 miljoen gebruikers waarvan, dagelijks meer dan 600.000 unieke. Hiermee is Magister de absolute marktleider

Bekijk vacature »

Medior Front-end Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte websites die in eigen beheer zijn. In onze vestiging in Nederweert zit onze development afdeling en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé Medior Front-end Developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het uitwerken van designs tot functionele layouts Je

Bekijk vacature »

PHP Developer

Functie omschrijving Als PHP Developer ga jij aan de slag met uitdagende software projecten. Jij gaat in deze functie software applicaties ontwikkelen. Deze software projecten zijn heel divers, en deze organisatie maakt software, van A tot Z. Klanten kunnen in elke sector werkzaam zijn, van profit tot non-profit. Deze software bouw je vooral in PHP en specifiek Laravel. Dit framework kent dus geen geheimen voor jou. De software die jij gaat ontwikkelen is heel divers, van urenregistratiesystemen tot compleet geautomatiseerde tools. In deze veelzijdige functie ga jij je zeker niet vervelen, elke dag bestaat weer uit nieuwe uitdagingen. Bedrijfsprofiel Deze

Bekijk vacature »

C# Ontwikkelaar

In het kort Als C# .NET Core ontwikkelaar ga je binnen onze business unit Transport en Logistiek aan de slag complexe maatwerk software voor bedrijf kritische systemen binnen de technische automatisering. Denk bijvoorbeeld een IoT-oplossing voor de logistieke sector waarbij we van ruim 200.000 machines de telemetrie en events verwerken. We zijn actief in de distributielogistiek, havenlogistiek en productielogistiek. Naast C# en .NET Core maken we ook gebruik van Azure technologie. En als trotse Microsoft Gold Partner leren we graag van en met jou. Wil jij jezelf blijven ontwikkelen binnen de technische automatisering met .NET, dan gaan we deze uitdaging

Bekijk vacature »

High level C++ QT Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13486 Introductie Would you like to be involved in every aspect of software development for our exceptional products, from specification and design to testing and integration? If you're passionate about software development and eager to apply your programming skills to create customer-focused deliverables, then this is the perfect chance for you to expand your expertise. You can become a member of our Machine Control department's data-driven development team, where you'll design and build software solutions that optimize machine productivity. As a senior software design engineer, you'll participate in all phases

Bekijk vacature »

Software Ontwikkelaar .NET te Zaandam

Bedrijfsomschrijving Je komt hier terecht bij een door-en-door softwarebedrijf, waarbinnen meerdere SaaS pakketten worden ontwikkelt voor diverse sectoren. Hierbij kun je denken aan bijvoorbeeld de logistieke en medische branche. Deze organisatie kenmerkt zich door de hoge mate van complexiteit in de applicaties, wat betekent dat jij je hier niet zal gaan vervelen. Integendeel: Jij gaat hier elke dag ontzettend veel leren en je in razend tempo ontwikkelen als C# .Net Developer met focus op back-end. Het team bestaat uit ongeveer 20 personen personen, waarvan het grootste deel zich richt op software development. De sfeer is informeel en professioneel. De producten

Bekijk vacature »

Node.js developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Fullstack Developer

Functieomschrijving Heb je kort geleden jouw HBO diploma ICT development behaald? Of zit je nog aan het begin van je carrière en heb je affiniteit met C#.NET? Voor een erkende werkgever in de omgeving van Oosterhout zijn wij op zoek naar een fullstack developer. Als C#.NET developer werk je samen met een vooruitstrevend team aan het ontwikkelen van maatwerk software voor klanten. Je hebt affiniteit met SQL, maar nog belangrijker is dat je kennis en ervaring hebt met C#.NET. Jouw werkzaamheden zien er als volgt uit: Het ontwikkelen van onze high-availability en high-performance backend; Je begint de dag rond 8:30

Bekijk vacature »

Senior Product Developer

Functieomschrijving Als senior Product Developer ben je verantwoordelijk voor bestaande mobiliteitsproducten en de ontwikkeling van nieuwe mobiliteitsconcepten. Met behulp van diverse klantonderzoeken, klantsessies en salesmeetings zorg je ervoor dat je de veranderende mobiliteitsbehoeften in de markt kent. Hier speel je op in door innovatieve, flexibele, efficiënte en duurzame vervoersoplossingen te bedenken, te ontwikkelen, te implementeren en uiteindelijk samen met Sales en Marketing collega’s in de markt te zetten. Je initieert en neemt deel aan (internationale en afdeling overschrijdende) projecten, vaak in de rol van projectleider. In die rol bewaak je de voortgang, coördineer je de activiteiten en zorg je voor

Bekijk vacature »

PHP Software Developer

Functie omschrijving Op zoek naar een nieuwe uitdaging binnen PHP? Lees dan snel verder! Wij zoeken een ervaren PHP developer die binnen een organisatie gaat functioneren als verlengstuk van de klant. Wij zoeken voor deze iemand die technisch complexe zaken met enthousiasme en plezier aanvliegt. Verder moet je instaat zijn om je tijd goed te managen omdat je aan meerdere projecten tegelijkertijd werkt. Je werkt met de nieuwste technieken en tijdens deze uitdaging werk je veel samen met de front-end developers van deze organisatie. Wij zoeken iemand die zichzelf graag uitdaagt en altijd de beste wilt zijn. Bedrijfsprofiel Waar ga

Bekijk vacature »

.NET Developer C#

Dit ga je doen Als developer nieuwe gave features implementeren; Werken met technieken als C# .NET en (REST) API's webservices; Ontwikkelen van koppelingen middels API's; Maken van technische keuzes en beslissingen over de architectuur; Junior collega's coachen; Initiatief nemen voor nieuwe technische mogelijkheden; Je bent een belangrijke schakel - en vindt het leuk - om te schakelen met de business. Hier ga je werken Als C# .NET Developer wordt je verantwoordelijk voor het ontwikkelen van applicaties voor belangrijkste product van deze organisatie. Dit product is een applicatie voor alles omtrent hypotheken. De programmeertaal die je hierbij beheerst is C#. Er

Bekijk vacature »

Creatieve Front-end developer gezocht!

Functie Het front-end team bestaat momenteel uit 4 collega’s en is hard aan het groeien! Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren. Je werkt in het front-end team samen met de back-end teams en product owners om te zorgen dat de applicaties een fijne gebruikerservaring opleveren. Jouw expertise zorgt ervoor dat de juiste keuzes gemaakt worden qua techniek en ontwerp, van back-end tot aan gebruiker. In samenspraak met je team bepalen jullie de beste keuze voor techniek. Ook is er altijd ruimte om nieuwe technieken te ontdekken. Eisen • Je hebt gedegen

Bekijk vacature »

Junior .NET developer

Functie Om half 9 kom jij binnen en pak jij als eerst natuurlijk een bakje koffie of thee. Vervolgens ga jij je voorbereiden op de stand-up van kwart voor 9. Zijn er bijvoorbeeld dingen waar jij nog tegen aan loopt? Of is er nog code die getest of gereviewd moet worden? Vervolgens starten jullie met de stand up en na de stand up zoeken jullie elkaar op en gaan jullie aan de slag. Als team met 6 developers werken jullie in drie wekelijkse sprints. Het einde van een sprint is altijd op een donderdag zodat jullie op vrijdag de demo

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving Voor de gemeente Amsterdam zijn wij op zoek naar een softwareontwikkelaar Cleopatra. De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van brom- en snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie. 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

26/04/2024 20:23:37
 
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.