Beste mensen,

Zoals jullie het zien ben ik bezig met php programmeren in een beginner's niveau, maar zelf vraag ik me wel af of een heredoc syntax misschien toch wel goed van pas kan komen. De reden waarom ik dit allemaal zeg is omdat ik er zelf mee oefen. Is het wel of geen aanrader voor de mensen zoals mij die bezig zijn met php programmeren? Zo niet, wat voor een syntax kan ik dan in plaats van een heredoc gebruiken?

Mvg,

Tolga
Ik heb het nog nooit gebruikt.
Wat kun je me dan het beste aanraden om in plaats van een heredoc syntax te gaan gebruiken? Iemand?
Wat wil je d'r in stoppen?
In principe heb je heredoc (of nowdoc) niet echt nodig. Al kan het bijvoorbeeld bij xml wel handig zijn.
Ik zal mijn best doen om alles zo duidelijk mogenlijk proberen te uitleggen.

Dat als je bijvoorbeeld naar een website gaat en je wilt je daarbij aanmelden, dan wordt je doorgelinkt naar een ander pagina voor een registratie, maar zelf hou ik daar niet van en probeer op mijn eigen idee
een registratie menu op dezelfde link te laten verschijnen wanneer er op
een knop aangeklikt wordt wanneer iemand wilt aanmelden.
Op mijn vorige topic zie je een voorbeeld van mijn script staan, maar zo te zien is het slecht geprogrammeerd. Dat kan iedereen overkomen, het maakt mij ook niet veel uit omdat zij meer ervaring in programeren hebben en gelijk hebben. Maargoed, hieronder zie je dezelfde voorbeelden van mijn scripts.


index.php

<?php
error_reporting(E_ALL);
?>
<html>
    <head>
    <title>Registeren</title>
    <style type="TEXT/CSS">
        
        #head
        {
            background-image: url(logo_bg.jpg);
        }
        #login_menu
        {
            background-image: url(logo_bg.jpg); 
        }
        #nieuws
        {
            background-color: #EEEEEE;
        }
        #linker_menu
        {
            background-color: #EEEEEE;
            
        }
        
        
    </style>
    </head>
    <body bgcolor="black"> 
        <center>
        <table border="1" style="border-color: white;">
        <tr><td><div id="head" style="overflow:auto;width:600px;height:135px;padding:10px;border:0px solid #eee">
        </div></td><td><div id="login_menu" style="width: 150px; height: 135px;">
        <table>
        <form method="post" action="">
        <tr><td>
        <font color="white">Gebruikersnaam:</td></tr><tr><td></font>
        <center>
        <input type="text" name="logGebruiker"></td></tr><tr><td>
        </center>
        <font color="white">Wachtwoord:</td></tr><tr><td></font>
        <center>
        <input type="password" name="logWachtwoord"></td></tr><tr><td align="right">
        <input type="submit" name="registeren" value="registeren">
        <input type="submit" name="login" value="login">
        </center>
        </td></tr>
        </form>
        </table>
        </div>
        <tr><td><div id="nieuws" style="overflow:auto;width:600px;height:480px;padding:10px;border:0px solid #eee">
        <?php
            include("register.php");
        ?>
        </div></td><td><div id="linker_menu" style="height:480px;padding:10px;border:0px solid #eee">
            
        </div></td></tr>
        </table>
        </center>
    </body>
</html>


register.php

<?php
                    
            // Verbinding maken met de localhost.
            $con = mysql_connect("localhost", "root", "");
            If (!$con)
            {   // Als er geen verbinding gemaakt kan worden, geef dan een foutmelding.
                die('Communicatie foutmelding: ' . mysql_error());
            }
            else
            {   // Verbinding succes!
                mysql_select_db("mijn_db", $con);
                
            }
            // de register menu wordt zichbaar gemaakt met daarin de algemene voorwaardes van de gebruiks regels.
            if(isset($_POST['registeren']) || isset($_POST['terug'])){
                $regPlug = <<<message
                <form method="POST" action="">
                    <table>
                    <tr><td colspan="6">
                    <table border="1" bgcolor="white">
                    <center>
                    <tr><td>
                    <div id="AGR" style="width:560px;height:220px;padding:10px;border:1px solid #eee">
                    </center>
                    <ul>
                    Algemene gebruiks regels:<br><br>
                    
                    #1 = Je mag geen scheldwoorden gebruiken, op wat voor een manier dan ook. <br>
                    #2 = Laat geen spam mailtjes achter, en val mensen niet lastig.<br>
                    #3 = Alles wat vies, eng of tot sexuele aandoeningen leidt is verboden. <br>
                    #4 = Laat leesbare berichten achter alleen in het Nederlands of in het Engels. <br>
                    #5 = Wees vriendelijk tegen iedereen, vooral als het om de admin gaat. <br>
                    #6 = Je mag geen illegale overleg uitvoeren over roms, "warez", CD-Keys,<br> 
                    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ISO spellen, piraterij en alle andere onwettige activiteiten. <br>
                    #7 = Laat geen dubbele posten achter.
                    
                    </ul>
                    </center>
                    </td></tr>
                    </table><br>
                    <tr><td>
                    <font color="red">*</font> Gebruikersnaam</td><td>:</td><td>
                    <input type="text" name="regGebruiker">
                    </td></tr><tr><td>
                    <font color="red">*</font> Wachtwoord</td><td>:</td><td>
                    <input type="password" name="regWachtwoord">
                    </td><td>
                    <font color="red">*</font> Herhaal wachtwoord</td><td>:</td><td>
                    <input type="password" name="regWachtwoordControl">
                    </td></tr><tr><td>
                    <input type="submit" name="regKnop" value="registeren">
                    </td></tr>
                    </table>
                </form>
message;
                echo $regPlug;
            }
            // Als er op de register knop geklikt wordt,
            if(isset($_POST['regKnop'])){
                
                $user = $_POST['regGebruiker'];
                $password = $_POST['regWachtwoord'];
                $pass = md5($password);
                $passC = $_POST['regWachtwoordControl'];
                $passControl = md5($passC);
                
                // controlleer dan of de velden leeg staan.
                if (empty($pass) || empty($passControl) || empty($user)){
                    $errRegMessage = <<<errRegMessage
                    Als je wilt aanmelden, dan ben je verplicht om alle velden te gaan invullen.
                    <br>
                    <form method="POST" action="">
                    <input type="submit" name="terug" value="terug">
                    </form>
errRegMessage;
                    echo $errRegMessage;
                }
                // Hier wordt de wachtwoord gecontrolleerd.     
                elseif ($pass != $passControl){
                    $errRegMessage = <<<errRegMessage
                    De ingevoerde wachtwoorden komen niet met elkaar overheen. Typ het a.u.b. opnieuw.
                    <br><br>
                    <form method="POST" action="">
                    <input type="submit" name="terug" value="terug">
                    </form>
errRegMessage;
                    echo $errRegMessage;
                }else{
                    // De variabel $user wordt verbonden met de Username dat in de database zit.
                    $result = mysql_query("select * from user_registery where Username = '". $user . "'; ");
                    
                    // Controleren of de gebruikernaam al bestaat, zo ja, dan krijg je een melding dat de gebruiker al bestaat...
                    if (mysql_num_rows($result) == 1){
                        echo '<font color="red">' . "De gebruikersnaam bestaat al." . '</font>' . "<br>";
                    }
                    else
                    {
                        // De gebruikernaam en de wachtwoord wordt in de database genoteerd en ook krijgt de persoon een notificatie van zijn aangemaakte gebruikernaam.
                        $result = mysql_query("insert into user_registery (Username, Password) values ('". $user . " ',' ". $pass ."');");
                        echo '<font color="green">' . "Gebruikersnaam aangemaakt!" . '</font>' . "<br>";
                    }
                }
            
            // Mysql afsluiten.
            mysql_close($con);
            }
        
        ?>
Geen tabellen gebruiken voor lay-out.
Verder zou ik lange stukken html buiten je php houden. Dus geen heredoc gebruiken.
Ja maar dan wordt alles wel zichbaar gemaakt zonder dat je op een knop drukt.
ik denk wat karl bedoelt is zo

<?php
if(false){
?>
<html>
    <head>
    <title>Registeren</title>
    </head>
<body>
 hallo
</body>
</html>
<?
}
?>


je houd html buiten php maar het staat nog steeds in een if statment daar door zul je deze html niet zien
Ontvanger Karl
Afzender Tolga
Verstuurd op 06.06.2009 20:13
Onderwerp heredoc

topic: question: heredoc wel of geen aanrader voor de professionals

Ja maar dan wordt alles wel zichbaar gemaakt zonder dat je op een knop drukt.

Spam niet.
ohh!
Bedankt! Ik zal het nu meteen uitproberen! :P
@Karl
uhh, ik wilde z.s.m. reactie terug ontvangen.
mijn excuses, ik zal voortaan voorzichtiger zijn.

Reageren