Beetje hulp

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

C#.Net / Ontwikkelaar / Developer / Software Engin

Functieomschrijving C#.Net / Ontwikkelaar / Developer / Software Engineer Ontwerpen van nieuwe applicaties; Herschrijven van bestaande applicaties; Meedraaien in uitdagende projecten; Code reviewen; Communiceren met de business. Functie-eisen HBO werk- en denk niveau; Minimaal 3 jaar ervaring als Software Engineer; Kennis van C# en SQL server zijn een eis; Je hebt ervaring met het werken in een Scrum / Agile omgeving; Heb je al kennis van Micrsoft Azure, dan is dit een belangrijke pré; Kennis van ASP .NET, MVC, Rest, Xamarin, XML/JSON en HTML5/CSS3 zijn mooi meegenomen. Bedrijfsomschrijving Deze organisatie is werkzaam in de e-commerce branche. Het is een snel

Bekijk vacature »

Back-end Python Developer

BACKEND DEVELOPER PYTHON For an international client near Utrecht I'm currently looking for a Back-end Python Developer that has affinity with Data Science. Do you want to work with the most talented people and at the same time work for a company that is engaged in reducing the environmental impact? Then this could be one of the most challenging opportunities. The Responsibilities As a Back-end Developer in this company, you build something that matters in various product development projects, focusing for example on data processing, data storage, data science or platform billing. Product development projects can be executed both on-site

Bekijk vacature »

.NET Developer E-Learning Amsterdam

WE’RE CURRENTLY WORKING WITH AN IMPACTFUL AND INNOVATIVE E-LEARNING COMPANY BASED IN AMSTERDAM WHO ARE LOOKING FOR AN EXCEPTIONAL .NET DEVELOPER TO JOIN THEIR TEAM. You will be joining a global team of 220+ who provide a userbase of over one million with the resources they need to strengthen their skillsets and develop themselves to the highest extent. Working with a number of market leaders, there has never been a more exciting time to get involved. WHAT TO EXPECT Writing and testing code to ensure it is the highest quality possible Researching and contributing to the implementation of new tech

Bekijk vacature »

C# / .NET Developer / SiteCore

Functieomschrijving Ben jij een Developer met kennis van C# / .NET en wil jij je graag specialiseren op het gebied van Sitecore? Wil jij daarnaast werken aan uitdagende Inhouse projecten voor grote en bekende partijen in Nederland? Dan is dit de rol waarnaar jij op zoek bent! Binnen deze rol zal jij je als C# / .NET Developer (met de focus op SiteCore) aan de slag gaan voor een van de meest bekende bureaus op het gebied online platformen, een rol met veel afwisseling en voldoende technische uitdaging! Werken aan diverse en uiteenlopende projecten, waarbij je meer dan eens pionierswerk

Bekijk vacature »

Senior Front-end Developer vacature

Jij weet wat er nodig is. Jouw hart gaat sneller kloppen van techniek. Jij wil vooruit. Ben jij de Front-end Developer die we zoeken? Je bent creatief, thuis in gebruikersinteractie en een gedreven engineer in hart en nieren. Daarnaast heb jij een klantgerichte en proactieve houding. Precies de kwaliteiten die een Front-end Developer nodig heeft. Wat doe je als Developer? Als Front-end Developer werk je aan de technische realisatie van front-end (web)applicaties in de verschillende uitdagende opdrachten voor Sogeti’s klanten. Dit kan zowel op klantlocatie zijn, als binnen het Center of Excellence van Sogeti. Jij houdt van het uitdenken en

Bekijk vacature »

Biztalk Ontwikkelaar

Functieomschrijving BizTalk Ontwikkelaar / Developer / C# / Visual Studio / SSIS / SQL Vertalen van de requirements naar technische ontwerpen; Ontwerpen, bouwen en beheren van de systeemkoppelingen; Uitvoeren van unit- en systeemtests; Ondersteunen bij acceptatie- en regressietests; Oppakken en oplossen van 2e en 3e lijns incidenten; Bijhouden van de technische documentatie. Functie-eisen HBO werk- en denkniveau; Minimaal 2 jaar ervaring met BizTalk; Ervaring met C# en SQL; Kennis van SSIS, Sentinet en CODE framework zijn een pré; Je bent goed in doorvragen, communicatief vaardig, kan goed werken in een dynamische omgeving. Bedrijfsomschrijving Onze klant is actief in de financiële

Bekijk vacature »

PHP Developer

Voor een bedrijf in Hengelo gericht op E-commerce wordt er gezocht naar een PHP Developer. Het bedrijf Opgericht rond het millennium en gevestigd in Hengelo wordt er bij dit bedrijf met ongeveer 40 mensen met veel passie en plezier gewerkt aan een cloud based webshop platform. Dit is dan ook het product dat wordt aangeboden en continu wordt door ontwikkeld zodat een webwinkel voor iedereen mogelijk wordt, zowel voor een start-up als de ervaren winkelier. Er worden meer dan 10.000 webshops gefaciliteerd en het bedrijf is marktleider in de e-commerce branche. Als PHP Developer maar je onderdeel van een IT

Bekijk vacature »

C++ Developer Financial & Trading Amsterdam

WE'RE CURRENTLY WORKING WITH A YOUNG FUND MANAGEMENT START-UP BASED IN AMSTERDAM WHO ARE LOOKING FOR AN EXPERT C++ DEVELOPER TO JOIN THEIR TEAM. You would be joining a team where high achievers and top dogs will thrive and managing a wide range of responsibilities while working directly with the company's traders. For this reason, it is essential that candidates have experience in a trading environment. IDEAL CANDIDATE C++ 11/14 development in a Linux environment Strong knowledge of STL, algorithms, and multithreading Experience in the financial sector, trading environments in particular Great interpersonal skills WHAT THEY OFFER Competitive salary Growth

Bekijk vacature »

Senior Fullstack Developer (Java/Springboot)

Job Title: Senior Fullstack Developer (Java/Springboot) Job Location: Amsterdam, Netherlands Salary & Benefits: Competitive What makes Cognizant a unique place to work? The combination of rapid growth and an international and innovative environment! This is creating a lot of opportunities for people like YOU — people with an entrepreneurial spirit who want to make a difference in this world. What makes Cognizant a unique place to work? The combination of rapid growth and an international and innovative environment! This is creating a lot of opportunities for people like YOU — people with an entrepreneurial spirit who want to make a

Bekijk vacature »

.NET developer / C# / Webservices

Functieomschrijving Wil jij als .NET Developer bij deze organisatie in Tilburg als kartrekker in een Scrum team fungeren en je helemaal uitleven in de backend met C#? Krijg jij een grotere kick van high-security en high-availability .NET backend oplossingen dan van een gelikte frontend? Dan past deze functie jou perfect! Programmeren van high-availability en high-security applicaties in C#; Samen met je teamgenoten nieuwe applicaties/diensten ontwikkelen in .NET; Overleggen met de informatie analisten en testers; Ontwikkelen van webservices (WCF); 20% van je tijd besteden aan innovatie; Deelnemen aan projecten om nieuwe ketenpartijen toe te voegen; Bouwen van unit testen. Functie-eisen Beschikt

Bekijk vacature »

Xamarin Developer

Functieomschrijving Ben jij de Xamarin expert die de volgende stap in zijn carrière wil zetten? Houd jij er van om veelgebruikte apps verder uit te bouwen terwijl je de kwaliteit blijft waarborgen en heb je daarnaast zelf innovatieve ideeën ? Lees dan snel verder! Samen met het gehele mobile app team ben jij verantwoordelijk voor: de (door)ontwikkeling van Native applicaties voor Android en iOS; het verder samenbrengen van de applicatie en de web omgeving; de innovatie van de applicatie, het is belangrijk dat jij zelf meedenkt en jouw ideeën voorlegt binnen het team; feedback vanuit de gebruikers te behandelen en

Bekijk vacature »

Medior/Senior Python Developer rol met veel impact

Functieomschrijving Als Python Developer in dit internationale team ga je aan de Backend van de mobile en webapplicaties werken. Wanneer je ook aan de Frontend wil werken, dan ben je hier vrij in. Zelfstandigheid, teamwork en het durven nemen van beslissingen zijn belangrijk in deze rol. Je moet zelfstandig een goede technische opzet kunnen maken en daarnaast kunnen overleggen met het team over de volgende te nemen stappen. Je krijgt een ruime mate van vrijheid waar je op basis van richtlijnen de Backend kunt ontwikkelen. In de Backend werk je hier met grote Data sets en ben je met het

Bekijk vacature »

.Net custom software developer

Jouw uitdaging als .Net developer Als .Net custom software developer creëer je maatwerkoplossingen. Denk aan een mobiele applicatie voor het stroomlijnen van logistieke processen, een platform voor een uitkeringsorganisatie of de passagiersbeleving van een vliegtuigmaatschappij. Hierbij gaat het vaak om complexe omgevingen met veel gebruikers, waarbij de lat dus hoog ligt. Wat jouw werkzaamheden zoal zijn? Je werkt mee aan het gehele ontwikkelproces, van ontwerp, design en ontwikkeling tot testen en beheren van Microsoft applicaties en PoC’s. Je gaat werken met o.a. de volgende technologie: Azure, C#, .Net core, Angular, React, Vue en soms AWS. Je neemt deel aan meetings

Bekijk vacature »

Java Developer

Wel eens bij een webshop iets besteld? 100% zeker dat de logistieke data van die verzending over onze back-end gelopen is! Om deze software te verbeteren en nog verder schaalbaar te krijgen zoeken wij enthousiaste software engineers. Spreken de termen "meer", "groter" en "mooier" je aan? Of deze: "API", "webservices", "microservices", "JPA"? Kom dan eens een kop koffie drinken bij ons op kantoor. Kunnen we meteen laten zien waarom je bij ons welkom bent! Transsmart (www.transsmart.com) is onderdeel van de Unifaun-familie: leider op het gebied van Cloud Transport Management Systemen op de Nordic-markt met vestigingen in Nederland, België, Zweden, Finland,

Bekijk vacature »

QAD Techno Functional Consultant

The Medline IT team is working every day to provide innovative solutions to our internal and external customers with the goal that these solutions will differentiate us from the competition. Medline International is looking to hire a full-time experienced QAD Techno-Functional Consultant for its European headquarters, located in Arnhem, the Netherlands. The role will be part of Medline’s information services department, and will report directly to the QAD Application Owner. QAD Functional Consultant ACTIVITIES: Work on QAD projects with team members based in both our European headquarters in Arnhem and in Pune, India. Support the European business through implementing and

Bekijk vacature »
Sander Vanier

Sander Vanier

11/03/2011 14:37:21
Quote Anchor link
Beste Leden,

Ben druk bezig met het leren van PHP en loop tegen een probleempje aan wat ik op Google niet gauw terug kan vinden (gebeurd niet vaak :) ), waarschijnlijk omdat ik niet op de juiste termen zoek. Ik heb een register/login script met activatiemail nu werkend. Op het moment dat iemand
inlogd, wordt gecheckt of het klopt en een session aangemaakt, zo dus:

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
}
        // bekijk of het formulier verzonden is en de gegevens juist zijn
    elseif ($HTTP_POST_VARS["submit"] && $HTTP_POST_VARS["login"] && $HTTP_POST_VARS["pass"])
    {
        // encrypt pass om te matchen met encrypte pass in de database
        $passwd = md5($HTTP_POST_VARS[pass]);
        
        // selecteer login/pass uit de database en match ze met ingevoerde gegevens
        $sql = "SELECT id FROM $table WHERE login = '$HTTP_POST_VARS[login]' AND pass = '$passwd' AND activeer IS NULL";
        $res = mysql_query($sql);
        
        // bekijk of de gegevens juist zijn
        if (mysql_num_rows($res) >= 1)
        {
            // registreer sessie (of cookie)
            $ingelogd = mysql_result($res, 0);
            session_register(ingelogd);
            // setcookie("ingelogd", "$ingelogd", time() + 1 * 86400);
            echo "<p style=\"font-family: Arial, Helvetica, sans-serif; font-size: 13px; color: #000000;\">
            U bent succesvol ingelogd.</p>";

            echo "<p style=\"font-family: Arial, Helvetica, sans-serif; font-size: 13px; color: #000000;\">
            Klik hier om <a href=\"home.php\">verder</a> te gaan.</p>";
                        
        }
        // zo niet, geef foutmelding
        else
        {


Dit script gaat nog verder, maar is niet zo van belang. Nu beveilig ik de pagina's zo:

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
<?php
    session_start();
    
$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name
$tbl_name="voorbeeld_gebruikers"; // Table name

// Connect to server and select databse.

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

  if (!$HTTP_SESSION_VARS["ingelogd"])
    {

        header("Location: login.php");
}


?>


Mijn vraag is: Ik wil op de homepage zeggen, welkom 'Naam'. Deze naam staat in dezelfde rij in de tabel als de account (bijv 64010722). Hoe roep ik deze aan? Ik wil
dus niet welkom 'Account', ik wil daadwerkelijk de naam die ze opgegeven bij het registeren.

Hopelijk (en ik twijfel er eigenlijk niet aan) weet iemand de oplossing! :)

Alvast Bedankt
Sander
Gewijzigd op 11/03/2011 15:24:09 door Sander Vanier
 
PHP hulp

PHP hulp

12/12/2019 11:27:35
 
Write Down

Write Down

11/03/2011 14:41:44
Quote Anchor link
Je code is brak en nu al verouderd. Zoek maar is naar superglobals. Kan je even de link geven naar je script? Ik ga je even een onveiligheid bewijzen. Eens ik je dat kan tonen zal ik je laten zien wat er beter kan. Ik wil je eerst even laten verschieten, zodanig dat je de fout nooit meer zal maken :-).
Gewijzigd op 11/03/2011 14:44:34 door Write Down
 
Sander Vanier

Sander Vanier

11/03/2011 14:50:15
Quote Anchor link
Staat op de schoolserver waar niet iedereen zomaar bij kan, maar ik hoor natuurlijk graag van je waar een groot gevaar schuilt. Ik weet dat er enige verouderde code inzit, maar ik het het script hiervandaan en de maker heeft het waarschijnlijk wat ouder geschreven. Ik heb het enkel aangepast naar mijn eigen situatie, wat dingen toegevoegd en wat dingen verwijderd ;)
 
Write Down

Write Down

11/03/2011 14:54:21
Quote Anchor link
Vul als wachtwoord een keertje 'OR1=1 in en geef alle resultaten weer. Wat zien we: alle users worden getoond!

Of nog leuker, vul is in '; DROP TABLE '$table' (of DROP TABLE users) Boem, te tabel is verwijderd ;-)

mysql_real_escape, google. Verder google ook is superglobals, pas je script aan. Dan pas is het interessant om je verder te helpen met je eigenlijke vraag.




Toevoeging op 11/03/2011 14:55:49:

PHP Beginnershandleiding
SQL Beginnershandleiding
 
Kris Peeters

Kris Peeters

11/03/2011 15:12:22
Quote Anchor link
Write Down op 11/03/2011 14:54:21:
Vul als wachtwoord een keertje 'OR1=1 in en geef alle resultaten weer. ...


Je vergist je.
het paswoord wordt door md5() gehaald. md5() geeft een resultaat weer dat 100% injection veilig is.


Dit gezegd zijnde ... er is inderdaad veel werk aan. Verouderde technologie, foute logica (bv. controleren op de post van de submit knop)...
Gewijzigd op 11/03/2011 15:15:06 door Kris Peeters
 
Wouter J

Wouter J

11/03/2011 15:16:38
Quote Anchor link
Je code zit inderdaad vol fouten en lekken:
- Je moet altijd goede foutafhandeling gebruiken op de mysql_* functies.
- Kijken of een formulier gepost is doe je zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
  # Verzonden
}
?>

- Gebruik superglobals. Voor fomulieren is dat $_POST en voor sessies is dat $_SESSION
- Voeg een salt toe aan het wachtwoord.
- Variabelen moeten buiten de quotes

En haal even je gebruikersnaam + wachtwoord weg. Dit staat nu al een tijdje op internet en dus ook in de cache van google, verander dit dus.
Gewijzigd op 11/03/2011 15:16:52 door Wouter J
 
Sander Vanier

Sander Vanier

11/03/2011 15:22:15
Quote Anchor link
Injection is dus niet meer aan de orde, wat betreft de superglobals, deze kunnen inderdaad wel vervangen worden. Salt toevoegen aan ww? Doet dit niet hetzelfde als md5? Toevallig iemand ook het antwoord op mijn originele vraag? :$

Sander
Gewijzigd op 11/03/2011 15:27:30 door Sander Vanier
 
Kris Peeters

Kris Peeters

11/03/2011 15:34:21
Quote Anchor link
Sander Vanier op 11/03/2011 15:22:15:
Injection is dus niet meer aan de orde, wat betreft de superglobals...


Wow, niet te vlug he.

Wat ik zeg, is dat $passwd beveiligd is tegen injectieon omdat je de string door md5() hebt gehaald.

Met superglobals moet je juist heel erg opletten. Altijd!

Wat je initiële vraag is ...
We gaan je niet de weg wijzen door een doodlopende straat.
Smijt dat allemaal weg en begin opnieuw. Begin ook onmiddellijk met php5
 
Sander Vanier

Sander Vanier

11/03/2011 15:43:19
Quote Anchor link
Wat is de meerwaarde van de Superglobals dan? Deze code is onder andere tot stand gekomen in de klas en ik verwacht niet dat dit script ooit in gebruik zal worden genomen. Er zitten al een hoop
uurtjes in alle code die berust op wat ik hier gepost heb en dit alles veranderen zie ik niet zitten. Mochten jullie geen antwoord willen geven op mijn vraag, dan wil ik jullie in ieder geval bedanken voor de hulp tot zover en zal ik mijn vraag ergens anders neer moeten gaan zetten. Misschien dan zonder de initiële code ;)

Sander
 
Kris Peeters

Kris Peeters

11/03/2011 16:07:07
Quote Anchor link
Kijk even naar een algemeen geraamte, wanneer je met de verwerking van posts werkt.

Je zal bijna altijd zo-iets doen:
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
<?php
session_start();

$host="localhost"; // Host name
$username=""; // Mysql username
$password=""; // Mysql password
$db_name=""; // Database name

if ($_SERVER['REQUEST_METHOD'] == "POST") {  // nooit controleren op de waarde van de submit knop, maar op de request method zelf
    // verwerking post gegevens uit formulier

    $sql = "
        SELECT id
        FROM my_table
        WHERE
            login = '"
. mysql_real_escape_string($_POST['login']) ."'
            AND pass = '"
. md5($_POST['paswoord']) ."'
            AND activeer IS NULL
    "
;
    // ... enzovoort
    
    // Nu is de $_POST nog actief.  Om die actieve $_POST weg te halen, gaan we redirecten naar de pagina waarop we ons bevinden.
    //

  header('location: index.php') ;    
}

else {
    // toon hier je formulier
    // Merk op: pas vanaf hier mag je beginnen HTML naar de gebruiker te sturen.
    // Er mag niets van HTML worden verstuurd boven (in de code) de functie header(...)

    echo '
    <form method="post" action="">
        <input .../>
        <input type="submit" value="OK"/>
    </form>'
;
}
?>


session_register() heb je niet nodig.
Je kan direct iets doen zoals:

$_SESSION['ingelogd'] = 1;

Zoals je nu bezig bent, zal je nooit ergens geraken. Hoe vlugger je dat beseft, hoe minder je zal moeten beginnen prutsen.

Iedereen van ons heeft al code weggesmeten waar uren werk in is gekropen. Als je dat niet ziet zitten ... Tja, je ziet maar
Gewijzigd op 11/03/2011 16:15:07 door Kris Peeters
 



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.