Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 04:13 Der er 24 kommentarer og
2 løsninger

variable problem i form - skal variable defineres ens to steder

Jeg er total ny i php og dette er mit aller første forsøg med php så håber i vil bære over med mig.

Jeg forsøger at lave et lille form script, som skal valideres/checkes for fejl før det sendes.
Efter et par dage med at google og prøve mig frem er jeg foløbigt nået frem til følgende som ser ud til at virke

Indtaster man mindre end 5 bogstaver skal man komme retur med en fejlmedelelse, og det man tastede skal stå der enu.
taster man mellemrum før eller efter skal disse fjernes

(selve processeringe af formen er jeg ikke nået til enu):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="da" xml:lang="da">
<!--
===========
  TEST
===========
-->
<head>
    <title>test side</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" /><meta http-equiv="content-language" content="da" />
    <style type="text/css">
        .inputerror {Background: #ffbbbb;}
    </style>
</head>
<body>
    <div id="sitewrap">
<!--    TILFØJ ANRANGØR FORM    -->
<?php
// Setup Form
function showForm($errorName=false,$errormassage=false){
    // Set form variables
$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
    // Display form
    echo ('    <form action="" method="post">
                <table border="0" cellpadding="0" cellspacing="0" width="300px">');
    // Title
    echo ('            <tr>
                        <td>Title:</td>
                        <td><input type="text" name="title" value="'.$title.'" class="'.$errorName.'"></td>
                    </tr>');

    // Error message
    if ($errormassage)
        echo ('        <tr>
                        <td colspan="2">Der var en fejl i de markerede felter</td>
                    </tr>');
    echo ('            <tr>
                          <td><input type="submit" name="SubmitForm" value="Send"></td>
                      </tr>
                  </table>
              <form>');
}

// Process form

if (!isset($_POST['SubmitForm'])) {
    showForm();}
else {
    // Set error variables $title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
    $errorName = false;
    $errormassage = false;

$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';

    // Check form for input errors
    if (strlen($title)<5)  $errorName = 'inputerror';
    // If there is errors in the form display it again
    if ($errorName) {
        $errormassage = true;
        showForm($errorName,$errormassage);
        }
    else {
    // Process form
   
        echo '-'.$title.'-';
        echo '<br>Submission was success!';
    }
}

?>
    </div>
</body>
</html>


mit problem er linerne $title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
som ser ud til at skulle defineres 2 steder for det virke som jeg gerne vil have det kan det passe de skal være begge steder ??

Hvis jeg ikke har den øverste forsvinder det intastede hvis man går tilbage til formen pga fejl i det indtastede
Hvis jeg ikke har den nederste vil scriptet ikke forsætte til process
09. februar 2010 - 05:35 #1
Det korte svar er at linien kun behoever at forekomme en gang.  I koden som du viser den kommenterer du linien ud foerste gang derved at der staar:

  // Set error variables $title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
 
Hvis du laver linieskift efter // Set error variables

altsaa saaledes:

  // Set error variables
$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
 
saa kan du slette linien anden gang.

Ioevrigt har du allerede designed formen derved at funktionen showForm() staar i body og ikke i header og derved bliver koert med det samme naar du aabner siden.  Naar jeg loader din kode i mit system, tilfoejer det ovennaevnte linieskift og sletter "$title = isset....." anden gang saa faar jeg en form som reagerer som beskrevet, validerer input med mindst 5 bogstaver og ellers afviser.

Du har haft travlt hvis du i loebet af et par dage og for foerste gang har googled alt dette frem.  Du har lavet det alt for indviklet.  Hvis du vil skal jeg komme tilbage med et par forslag, men det bliver lidt senere.
Avatar billede repox Seniormester
09. februar 2010 - 08:40 #2
Jeg vil gerne supplere #1.
Set i lyset af at du er 'total ny i php' vil jeg fraråde dig at anvende alternativ syntaks for at opnå dine mål.

Strukturer som:

$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';

er hverken køn eller særlig letlæselig - særligt ikke hvis man netop er startet med at skrive PHP.

Her er to eksempler på kode som er lettere at læsere



// Mulighed #1
if( isset($_POST["title"]) )
  $title = trim($_POST["title"]);
else
  $title = "";

// Mulighed #2
$title = "";
if( isset($_POST["title"]) )
  $title = trim($_POST["title"]);



Ovenstående giver hurtigt et overblik over hvad der skal ske med variablen $title. Selvfølgelig er det en vanesag, men det kan hurtigt blive kompliceret at anvende PHPs alternative syntaks - særligt også fordi mulighederne differentierer fra PHP >= 5.3 og PHP <= 5.2.x
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 14:20 #3
Hej christian

Tak for dit svar .. Som jeg detsvære ikke helt forstår

Ja linien
  // Set error variables $title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
skulle egenligt bare have hedet
  // Set error variables

min fejl der...

Men problemet er at jeg stadigt skal bruge linien både under process form og i selve funktionen (se højre oppe)

Hvis jeg ikke har linien i selve funktionen forsvinder det intastede hvis man går tilbage til formen pga fejl i det indtastede.
Hvis jeg ikke har linien i processen vil scriptet ikke forsætte til Submission

Håber det giver mening ?


<?php
// Setup Form
function showForm($errorName=false,$errormassage=false){
    // Set form variables
$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
    // Display form
    echo ('    <form action="" method="post">
                <table border="0" cellpadding="0" cellspacing="0" width="300px">');
    // Title
    echo ('            <tr>
                        <td>Title:</td>
                        <td><input type="text" name="title" value="'.$title.'" class="'.$errorName.'"></td>
                    </tr>');

    // Error message
    if ($errormassage)
        echo ('        <tr>
                        <td colspan="2">Der var en fejl i de markerede felter</td>
                    </tr>');
    echo ('            <tr>
                          <td><input type="submit" name="SubmitForm" value="Send"></td>
                      </tr>
                  </table>
              <form>');
}

// Process form

if (!isset($_POST['SubmitForm'])) {
    showForm();}
else {
    // Set error variables $title
    $errorName = false;
    $errormassage = false;

$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';

    // Check form for input errors
    if (strlen($title)<5)  $errorName = 'inputerror';
    // If there is errors in the form display it again
    if ($errorName) {
        $errormassage = true;
        showForm($errorName,$errormassage);
        }
    else {
    // Submit form
        echo '-'.$title.'-';
        echo '<br>Submission was success!';
    }
}
?>
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 14:34 #4
"Du har haft travlt hvis du i loebet af et par dage og for foerste gang har googled alt dette frem.  Du har lavet det alt for indviklet.  Hvis du vil skal jeg komme tilbage med et par forslag, men det bliver lidt senere."

Travlt og travlt ...*S* .. har prøvet mig frem med forskellige forsøg og prøvet en del tutorials .. og finder egenligt dette noget mere simpelt i forhold til hvad jeg startede med :-)
Dette her kommer ud fra http://www.phpf1.com/tutorial/php-form.html?page=3 hvor jeg så prøver at tilpasse det til mit behov
(Syntes selv jeg har forenklet fejlvisningen ved at fjerne if'erne fra fra selve formen og lade den del være en style classe der vises/skjules)

Hvad jeg gerne vil nå frem til er en form der bliver cheket for fejl inden den bliver processeret, og hvis der er er fejl at man ser formen igen med fejlne highlightet og det indtastede stadigt stående i formen så man ikke skal starte forfra med indtastning
(Formen bliver en del stører end dette, men lidt lettere at overskue med kun et felt når jeg forsøger at lave den)

men høre meget gerne kommentare/forslag ... ved jeg har meget at lære :-)
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 14:39 #5
Hej repox

Tak for dit input ...
Gør forståelsen for hvad den line gør/betyder noget bedre :-)

Og ja .. dit forslag er noget mere læsevenligt

Dog ser jeg et - ved dit forslag
Når formen er færdig vil der være en 8-10 felter der skal trimmes og chekkes.. og så fylder din metode en del flere linier
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 14:57 #6
Dagens AHA oplevelse

tror sørme jeg selv har fundet en del af løsningen :-) (repox: din kommentar var med til at give mig ideen til denne løsning)

Hved at opdele $title  = isset($_POST['title'])  ? trim($_POST['title'])  : ''; i to og dele dem mellem funktionen og processen ser det ud til at virke som jeg ønske ...

i function:
    // Set form variables
$title  = trim($_POST['title']);

og i processen:

    // Set error variables
    $errorName = false;
    $errormassage = false;
$title  = isset($_POST['title']) ;

Så har jeg ikke den samme linie to steder og det ser ud til at virke som det skal.
(Ihh hvor er jeg stolt af mig selv)


Høre stadigt meget gerne kommentare/forslag/input
Avatar billede repox Seniormester
09. februar 2010 - 15:13 #7
#6
Du vil gøre antallet af linier i et serverside script op med overskueligheden og læsbarheden? God fornøjelse med vedligeholdelse og refaktorering med den indstilling.

Nu har jeg læst den tutorial du henviser til igennem og synes egentlig bare det er lidt tragikomisk at du anser den for at være den der passer dine behov bedst og er lettest at tilgå.

Det er tåbeligt at pakke det ind i en funktion, når funktionen ikke engang tilbyder dig dynamisk udvidelse af din formular.

Her er et eksempel der giver dig - IMO - en pænere struktur til at opnå præcis det samme: http://codepad.org/tcHIR5CL
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 15:20 #8
Tak for link repox

det vil jeg studere

Sagde ikke at det var den bedste løsning jeg havde fundet... blot at den gjorde det jeg gerne ville og at jeg nogenlunde forstod koden i den .. så havde noget at arbejde med..

Er somsagt helt grøn i php .. så
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 15:23 #9
BTW .. den løsning jeg troede jeg lige havde fundet viste sig ikke helt at virke aligevel .. (kunne ikke komme til selve Process form)

Og lige en ting mere
"Det er tåbeligt at pakke det ind i en funktion, når funktionen ikke engang tilbyder dig dynamisk udvidelse af din formular."

hvad mener du med dynamisk udvidelse af min formular ??
09. februar 2010 - 15:41 #10
jesper-moeller:  aha, der var tre linier med "$title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';"  Den havde jeg ikke lige fattet.

Men det er givet at du ikke behoever at gentage linien i funktionen.  Du sender simpelthen $titel med ind i funktionen.  Du kalder nu funktionen med to variable, $errorName og $errormassage derved at du siger:  if ($errorname) .... showForm($errorName, $errormassage).  I funktionen bruger du kun en af variablerne - til gengaeld genskaber du $titel som du allerede har.  En loesning er at kalde variablen saaledes:  showForm($titel, $errorName) og saa tilpasse variablen.

Men der er en raekke andre maader at forenkle det hele paa.  Jeg er i gang med at lave forslag, men jeg vil gerne afproeve alt foer jeg sender det og jeg fik lige travlt med noget andet.  Jeg vender tilbage.
Avatar billede repox Seniormester
09. februar 2010 - 15:44 #11
#9
Det skal kunne betale sig at pakke ting ind i funktioner og klasser. Fordelene ved at bruge funktioner og klasser ligger i genbrugeligheden.
At have en funktion der genererer en statisk udseende formular, er stort set ubrugelig. Så kunne du - som jeg har gjort i linket jeg gav dig - lige så godt skrive formularen en gang og så gøre det ordentligt.
Sandsynligheden for at du har to identiske formularer på dit website er alligevel forsvindende lille, så derfor er genbrugeligheden af din funktion minimal.
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 15:57 #12
"Sandsynligheden for at du har to identiske formularer på dit website er alligevel forsvindende lille"
Det har du ret i
Og ja... selve formen bliver "pænere" i koden :-)


Og dog.. skal jo netop genbruge formen med det før indtastede, hvis der er fejl i den ??

Jeg sider lige nu og leger med det eksemple du gav og kan ikke lige nu får den til at beholde de indtastede værdier hvis der er en fejl (den sletter alt og viser en blank form med fejl meddelelse)
Men mon ikke jeg finder løsning på det..*G*

En ting undre mig dog ved det forslag

ved de andre skulle jeg bruge if (!isset($_POST['SubmitForm'])) altså ved submit men denne køre på if( isset($_POST["name"]) ) ???
Hvorfor/hvordan virker/fungere det ??? kan jeg skrive hvadsomhelst der (eller helt undlade noget)
Avatar billede repox Seniormester
09. februar 2010 - 16:07 #13
Her er en forked udgave: http://codepad.org/lkbJY7Gb

Jeg har valgt at anvende

if( isset($_POST["name"]) )

fordi at jeg har et tekstfelt med den navngivning.
Du kan ikke bare bare bruge hvad som helst.
Det der kontrolleres på er om du har et array index kaldet name i dit $_POST array.
Og teksfelter i HTML'en vil ALTID returnere et eller andet om indholdet af feltet så er tomt.
Det er noget andet med checkboxes og radiobuttons.
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 16:07 #14
Hej christian

"howForm($errorName, $errormassage).  I funktionen bruger du kun en af variablerne"
Bruger da begge  $errorName sætter class i feltet og $errormassage viser tekst

"En loesning er at kalde variablen saaledes:  showForm($titel, $errorName)"
Det har jeg prøvet ... men kunne ikke få det til at virke (detsvære) men er nok mig der gør noget galt .*G*


"Men der er en raekke andre maader at forenkle det hele paa.  Jeg er i gang med at lave forslag, men jeg vil gerne afproeve alt foer jeg sender det og jeg fik lige travlt med noget andet.  Jeg vender tilbage."


Jeg er jer begge taknemlige fordi i gide bruge så meget tid på mig :-)
Og jeg vil nærstudere alle forslag/ideer... Bliver jeg kun klogere af
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 16:16 #15
Tak repox

Jeg kan altså (som jeg tænkte) bruge et vilket somhelst felt navn jeg har i formen ! Fino

"Det er noget andet med checkboxes og radiobuttons."
Jeg skal have nogle checkboxes og radiobuttons i formen senere, men holder det simpelt lige nu


vedr:
foreach( array( $name, $title, $email ) as $value)
{
if( strlen($value) == 0)

Så checker den bare for tomme felter, hvis jeg vil checke for tome felter  at title er minst 5 bogstaver gør jeg vel noget ala:

foreach( array( $name, $email ) as $value)
{
if( strlen($value) == 0)
$error = true;
}
if (strlen($title)<5) $error = true;
Avatar billede repox Seniormester
09. februar 2010 - 16:40 #16
Nej, så ville du skulle gøre således:

foreach( array( $name, $email ) as $value)
{
  if( strlen($value) < 5)
    $error = true;
}
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 16:51 #17
så skal de jo alle være over 5 ??

målet er alle skal være udfyldt ..
title skal være mere end fem

altså forskellige kreterier på nogle felter

BTW;
Har pt inført følgende for at overføre tidliger intastet
<input type="text" name="name" id="name" <?php echo ('value="'.$name.'"') ?>  />
09. februar 2010 - 17:48 #18
jesper-moeller, saa er jeg her igen.

Der er naturligvis flere maader det kan goeres paa.  Jeg gaar ud fra at du vil have funktionen fordi du senere ogsaa vil kunne validere andre inputfelter.

Hvis du vil have funktionen saa foreslaar jeg at du laver hele valideringen i formen.  Du laeser $titel ud og trimmer den og saa sender du $titel til funktionen (i stedet for at genskabe $titel i funktionen.)  Naar du saa er i funktionen checker du om $titel er laengere end 5.  Hvis nej saa laver du $errorNavn = "inputerror", ellers false, og saa laver du formen med errormessage.  Hvis ja saa laver du formen men skriver success.

Det tog lang tid fordi der var mere jeg havde villet goere, men jeg loeb ind i syntaksfejl og loeb toer for tid.  Her er den kode jeg nu foreslaar.  Kik paa den og kommenter hvis du vil.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="da" xml:lang="da">
<!--
===========
  TEST
===========
-->
<head>
    <title>test side</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" /><meta http-equiv="content-language" content="da" />
    <style type="text/css">
        .inputerror {Background: #ffbbbb;}
    </style>
</head>
<body>
    <div id="sitewrap">
<!--    TILFØJ ANRANGØR FORM    -->
<?php
// Setup Form
function showForm($title)
{
    $errorName = $_POST['SubmitForm'] && strlen($title) < 5? "inputerror" : false;
    // Set form variables
    // Display form
    echo ('    <form action="" method="post">
                <table border="0" cellpadding="0" cellspacing="0" width="300px">');
    // Title
    echo ('            <tr>
                        <td>Title:</td>
                        <td><input type="text" name="title" value="'.$title.'" class="'.$errorName.'"></td>
                    </tr>');

    // Error message
    if ($errorName)
        echo ('        <tr>
                        <td colspan="2">Der var en fejl i de markerede felter</td>
                    </tr>');
    echo ('            <tr>
                          <td><input type="submit" name="SubmitForm" value="Send"></td>
                      </tr>
                  </table>
              <form>');
    if(!$errorName) echo 'Submission was success!';
}

// Process form

if (!isset($_POST['SubmitForm'])) showForm();
else
{
    // Set error variables
    $title  = isset($_POST['title'])  ? trim($_POST['title'])  : '';
    showForm($title);   
}

?>
    </div>
</body>
</html>
09. februar 2010 - 17:52 #19
Jesper og Repox, jeg kan se at der har vaeret en del indlaeg.  Dem kikker jeg paa i aften, jeg skal vaek nu.
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 18:12 #20
Hej Christian

Tak for dit input og din brugte tid


"Jeg gaar ud fra at du vil have funktionen fordi du senere ogsaa vil kunne validere andre inputfelter."

Jeg brugte funktionen pga den blev brugt i den toturail jeg havde gået ud fra. Men ja... der kommer en del flere felter der ska valideres.
Og når de felter kommer på skal der ved fejl i formen farves de steder hvor fejlne er... rigtigt udfyldte felter skal ikke farves (Og fejlteksten skulle også gerne baseres på vilke fejl der er)

Kigger nærmere på både dit og repox forslag ... måske en kombination er sagen...*S*
Avatar billede repox Seniormester
09. februar 2010 - 19:08 #21
De kriterier du vil have opfyldt kan du jo - istedet for at anvende den metode jeg benytter - blot anvende en anden af dit eget valg:


  if( strlen($name) < 5)
    $error = true;

  if( !filter($email, FILTER_VALIDATE_EMAIL) )
    $error = true;


Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 19:29 #22
Ja... sider og roder og tester .. (Og googler)


if( !filter($email, FILTER_VALIDATE_EMAIL) )
Det ser smart ud ... må jeg lige google og se hvad er :-P


Jeg vender tilbage når jeg tror jeg har noget der ligner noget brugbart og så kan i jo bedømme om der er fremskridt (eller om jeg skal søge ind som ballonsælger i tivoli istedet :-P )

Smid lige et svar så i kan få lidt point også...
Avatar billede repox Seniormester
09. februar 2010 - 19:31 #23
Den der er egentlig forkert...
Den korrekte måde er:

if( !filter_var($email, FILTER_VALIDATE_EMAIL) )

Det gik lige lidt stærkt...
Avatar billede jesper-moeller Nybegynder
09. februar 2010 - 19:36 #24
Jeps ... fandt den lige via google :-)

Og fandt samtidigt også
FILTER_VALIDATE_IP
som nok også er nyttig :-)
09. februar 2010 - 19:55 #25
Saa er jeg tilbage, og jeg har kikket indlaeggene igennem.  Det blev en lang traad.  Jeg vil sige som summa summarum at det gaelder i programmering som i andre omraader af livet at "there is more than one way to skin a cat."  Jeg vil sige at der paa dit stade (du kalder dig begynder) kun er et valgkriteria, det der virker og som giver et resultat du kan vaere tilfreds med.  (Naar du kommer saa langt som at producerer og saelge software til andre begynder det ogsaa at blive vigtigt at lave det saadan at kunderne og de programmoerer der senere skal vedligeholde det ogsaa kan finde ud af det.)

Jeg stopper for nu - jeg har foreloebig udtoemt min visdom (eller mangel paa samme.)  Indlaeg #1 var mit svar naar det kommer til pointsgivning. Hvis du, naar du har rodet mere med det, kommer med yderligere spoergsmaal tager jeg fat igen hvis jeg skoenner at jeg kan hjaelpe.

Under alle omstaendigheder, held og lykke med forehavendet.
Avatar billede jesper-moeller Nybegynder
10. februar 2010 - 22:34 #26
Jeg siger jer begge mange tak for jeres hjælp og håber min fordeling af point er ok med jer

Jeg er gået vidre med repox forslag og arbejder nu på valideringen af felterne som jeg nok også får en del spørgsmål til
Har allerede lagt et på http://www.eksperten.dk/spm/901323 vedr. tal validering


Her er hvad jeg pt ha lavet:

<?php
    $sol = "                                    <li>";
    $eol = "</li>\n";

    if( isset($_POST["title"]) )
    {
        $title  = trim($_POST['title']);
        $firstname = trim($_POST['firstname']);
        $sourname = trim($_POST['sourname']);
        $address = trim($_POST['address']);
        $address2 = trim($_POST['address2']);
        $postno = trim($_POST['postno']);
        $city = trim($_POST['city']);
        $phone = trim($_POST['phone']);
        $mobile = trim($_POST['mobile']);
        $email = trim($_POST['email']);
        $web = trim($_POST['web']);
        $infotext = trim($_POST['infotext']);

        if (strlen($firstname) < 2) {
            $errorfirstname = "inputerror";
            $errormassage .= $sol."Fornavn skal være minst 2 bogstaver.".$eol;
            $error = true; }
        if (strlen($sourname) < 4) {
            $errorsourname = "inputerror";
            $errormassage .= $sol."Efternavn skal være minst 4 bogstaver.".$eol;
            $error = true; }
       
        if (strlen($postno) != "") {
            if (!is_numeric($postno)) {
                $errormassage .= $sol."postnummer kan kun være tal.".$eol;
                $error = true; }
            }
            else {
                if (strlen($postno) != 4) {
                    $errorsourname = "inputerror";
                    $errormassage .= $sol."postnummer skal være 4 cifret.".$eol;
                    $error = true; }
        }
                   

           
        if ($error == true)
        {
            $errormassage = "OBS! Der blev fundet fejl i indtastningen:\n                                <ul>\n".$errormassage."                                </ul>\n";
            $error = true;
        }


        if( !isset($error) )
        {
            $eol = "\n";

            $body = "Name: ".$name.$eol;
            $body .= "Title: ".$title.$eol;
            $body .= "E-mail: ".$email.$eol;

            mail("me@example.org", "Test", $body);

            header("Location: tak.php");
            exit;

        }

    }
?>
<?php include("header.html"); ?>

            <form method="post" action="" id="acpform">
                <table cellpadding="0" cellspacing="0">
                    <caption id="formheadline">Tilføj ny Fordragsholdere / Kunstner</caption>
                    <thead>
                        <tr>
                            <th colspan="5">Felter markeret med * skal udfyldes</th>
                        </tr>
                    </thead>
                    <tfoot>
                        <tr>
                            <td colspan="5"><?php if( isset($error));
                                echo ($errormassage); ?>
                            </td>
                        </tr>
                        <tr>
                            <td></td>
                            <td align="center"><input type="Reset" name="reset" id="reset" value="Nulstil" /></td>
                            <td></td>
                            <td align="center"><input type="Submit" name="submit" id="submit" value="Tilføj" /></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td colspan="5"> </td>
                        </tr>
                    </tfoot>
                    <tbody>
                        <tr>
                            <td width="80px"></td>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td width="80px"></td>
                        </tr>
                        <tr>
                            <td><label for="title">Titel:</label></td>
                            <td colspan="4"><input type="text" name="title" id="title" <?php echo ('value="'.$title.'" class="mediumfelt '.$errortitle.'"') ?> maxlength="" /></td>
                        </tr>
                        <tr>
                            <td><label for="firstname">foravn:</label></td>
                            <td colspan="4"><input type="text" name="firstname" id="firstname" <?php echo ('value="'.$firstname.'" class="helfelt '.$errorfirstname.'"') ?> maxlength="" /> *</td>
                        </tr>
                        <tr>
                            <td><label for="sourname">Efternavn:</label></td>
                            <td colspan="4"><input type="text" name="sourname" id="sourname" <?php echo ('value="'.$sourname.'" class="helfelt '.$errorsourname.'"') ?> maxlength="" /> *</td>
                        </tr>
                        <tr>
                            <td colspan="5"> </td>
                        </tr>
                        <tr>
                            <td rowspan="2"><label for="address">Adresse:</label></td>
                            <td colspan="4"><input type="text" name="address" id="address" <?php echo ('value="'.$address.'" class="helfelt '.$erroraddress.'"') ?> maxlength="" /></td>
                        </tr>
                        <tr>
                            <td colspan="4"><input type="text" name="address2" id="address2" <?php echo ('value="'.$address2.'" class="helfelt '.$erroraddress2.'"') ?> maxlength="" /></td>
                        </tr>
                        <tr>
                            <td><label for="city">By:</label></td>
                            <td><input type="text" name="city" id="city" <?php echo ('value="'.$city.'" class="halvfelt '.$errorcity.'"') ?> maxlength="" /></td>
                            <td><label for="postno">Postnr:</label></td>
                            <td><input type="text" name="postno" id="postno" <?php echo ('value="'.$postno.'" class="'.$errorpostno.'"') ?> size="8" maxlength="4" /></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td colspan="5"> </td>
                        </tr>
                        <tr>
                            <td><label for="phone">Tlf.:</label></td>
                            <td><input type="text" name="phone" id="phone" <?php echo ('value="'.$phone.'" class="halvfelt '.$errorephone.'"') ?> maxlength="" /></td>
                            <td><label for="mobile">Mobil:</label></td>
                            <td><input type="text" name="mobile" id="mobile" <?php echo ('value="'.$mobile.'" class="halvfelt '.$erroremobile.'"') ?> maxlength="" /></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td><label for="email">Email:</label></td>
                            <td><input type="text" name="email" id="email" <?php echo ('value="'.$email.'" class="halvfelt '.$erroremail.'"') ?> maxlength="" /></td>
                            <td><label for="web">Web:</label></td>
                            <td><input type="text" name="web" id="web" <?php echo ('value="'.$web.'" class="halvfelt '.$erroreweb.'"') ?> maxlength="" /></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td colspan="5"> </td>
                        </tr>
                        <tr>
                            <td class="itop"><label for="infotext">Info:</label></td>
                            <td colspan="4"><textarea name="infotext" id="infotext" rows="4" <?php echo ('value="'.$infotext.'" class="helfelt '.$errorinfotext.'"') ?>></textarea></td>
                        </tr>
                    </tbody>
            </table>
        </form>
<?php include("footer.html"); ?>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester