Posts by phpert

    kunnen meerdere dingen zijn:


    - scart kabel zelf
    - beeld uitgang op de xbox
    - scart ingang op de tv
    - schakeling op de kabel staat verkeerd
    - instelling op de xbox staat verkeerd


    heb zelf enkel een kabel gehad die verliep tot geel/rood/wit en groen/blauw/rood, daaromheen zo'n omvormer. mocht je ook zo'n kabel hebben, kan het ook nog aan die omvormer liggen dat die kaduuk is.


    _functions.php regel 8 wordt hij als het goed is aangemaakt, op regel 14 wat gebeurt daar?

    function is_name($i){ if(!preg_mach"^[A-Za-z0-9-]{3,25}$", $i)){ return FALSE; } else { return TRUE; }}


    zit een typo in. na preg_match moet er een ( komen.


    function is_name($i){ if(!preg_mach("/^[A-Za-z0-9-]{3,25}/$", $i)){ return FALSE; } else { return TRUE; }}


    zo zwerkt hij. is overigens nutteloos maar goed, dat is een ander verhaal.

    Wat je nu hebt gepakt zijn twee voorbeelden waarvan de eerste al een voorsprong heeft op de tweede.


    PDO is een paar opzichten vooral beter dan MySQLI, als voorbeeld dat PDO meer databases ondersteund.
    Alleen zie ik, dat je al bent begonnen met MySQLI. Ik zou dan niet halverwege een project de overstap naar PDO maken, wat je kan doen is net zoals in voorbeeld 1 beginnen met prepared statement.


    Met bijvoorbeeld jouw gegeven voorbeeld wordt het ongeveer zo:

    PHP
    //$query = $db->query("SELECT * FROM users WHERE gebruiker = '".$_POST['gebruiker']."'");
    $stmt = $mysqli->prepare("SELECT id,naam,gebruikersnaam FROM users WHERE gebruiker = ?");
    $stmt->bind_param('s', $_POST['gebruiker']);
    $stmt->exeucte();
    $stmt->store_result();
    $stmt->bind_result($userId, $userName, $userUName);
    $stmt->fetch();
    $stmt->close();


    Beter om in zo'n geval een echt voorbeeld te laten zien, ook om de werking juist uit te leggen

    Jep, gewoon PSD is genoeg :) Zou wel fijn zijn om de PSD netjes op te zetten, in groepen etc. Zelf overigens geen designert (hence the name phpert haha) maar mocht je nog specifieke vragen hebben, stuur even een mail of een reactie op het forum.


    thanks voor de tip van 99designs, enige nadeel is dat je daar dan eerst xxx,- voor moet neerleggen en wij liever dat geld gebruiken voor de prijzenpot (cut out the middleman!). daar heeft iedereen meer aan :)

    showemails: bekijk de functie htmlentities, je echo't de waarde maar eventuele xss ga je tegen met htmlentities
    process: bekijk de functie mysqli::real_escape_string (of overweeg PDO met prepared statements)


    dat laatste stukje is voor de oude mysql_* functionaliteiten, jij gebruikt mysqli (i => improved). kan werken, maar beveiligd niet optimaal.

    houd er rekening mee dat mysql_real_escape_string en de mysqli escape niet 100% beveiligd zijn tegen SQL-injecties, prepared statements daarentegen wel ;)


    overigens valideren van de input vóór je die in een query zet (als voorbeeld, topic_id=21819 -> moet een integer zijn, anders ongeldig) is nog beter.

    [google]PDO Prepared Statements[/google]
    zorgen ervoor dat je geen SQL-injecties meer kan uitvoeren, beter dan enkel te escapen via de oude mysql_*

    Hou je er rekening mee dat een sessie id gebruiken niet veilig is... sessies zijn makkelijk te verkrijgen via een man in the middle attack, verander het nummer in bijv. een 1 (meestal een admin acc) en je bent ingelogd als admin.

    sessies kun je alleen op de server wijzigen, dus het nummer veranderen in een 1 zorgt ervoor dat je enkel een ongeldige sessie id heb. cookies zijn client-side, die moet je niet vertrouwen, maar de sessie staat op de server. enige waar je wel op moet letten is dat je sessie niet wordt ge-hijacked, dus in je php controleren of bepaalde waarden overeenkomen en gebruik maken van een SSL-beveiliging zodat een MITM-aanval nutteloos wordt.

    heb je bovenin wel session_start(); staan? overigens, kijk eens naar PDO. stukken veiliger als je het goed gebruikt.