Array - validatie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Jac E

Jac E

20/09/2014 23:54:21
Quote Anchor link
Ik heb een simpel invulformulier met validatie gevonden. Alleen krijg ik de melding "vergeten het veld vraag_nummer in te vullen". Het script heeft string variabele. Nu wil ik die string variabele in die zin graag wijzigen in normale tekst b.v. "vergeten het veld vraagnummer in te vullen". Hoe kan ik e.e.a. omzetten. Ik krijg het niet voor elkaar. Wie kan mij helpen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
// Controle of alle velden ingevuld is.
                else
                {
                    if(empty($value))
                    {
                        $_SESSION['errors'][$veld] = true;
                        $errors[] = 'Je bent vergeten het veld '.$veld.' in te vullen.';            
                    }
                }
Gewijzigd op 21/09/2014 01:57:43 door Jac E
 
PHP hulp

PHP hulp

22/12/2024 17:53:32
 
Pipo Clown

Pipo Clown

21/09/2014 00:01:17
Quote Anchor link
Deze vraag kan zo niet beantwoord worden.
Het moet minimaal bekend zijn waar de variabele $veld vandaan komt.

Enig inzicht in het vullen van de errors-array zou ook welkom zijn.
Gewijzigd op 21/09/2014 00:01:53 door Pipo Clown
 
Jac E

Jac E

21/09/2014 00:33:19
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
$formuliervelden = array(
    'vraag_nummer' => 'text',
    );
      
    // alle elementen uit de $_POST array langslopen
    foreach($formuliervelden as $veld => $type)
 
Ozzie PHP

Ozzie PHP

21/09/2014 00:41:45
Quote Anchor link
Wat bedoel je met "Het script gebruikt dus de string variabele." Leg eens gewoon, zonder technisch proberen te zijn, uit wat je wilt. Geef eens een concreet voorbeeld (nu gebeurt er dit, maar ik wil dat er dit gebeurt...)
Gewijzigd op 21/09/2014 00:42:03 door Ozzie PHP
 
Jac E

Jac E

21/09/2014 00:51:56
Quote Anchor link
In het invulformulier wordt bijvoorbeeld $voornaam gebruikt om je naam in te vullen. Bij een foutmelding krijg ik dan te zien dat "de vraag $voornaam niet is ingevuld". Maar ik wil dat hij niet $voornaam gebruikt in de foutmelding. Dat staat vreemd. Gewoon het woord voornaam is beter. Hoop dat ik nu wat duidelijker ben geweest
 
Ozzie PHP

Ozzie PHP

21/09/2014 00:58:21
Quote Anchor link
Plaats dan eens even het complete script aub. (wel ff heel erg snel aub, want ik sta op het punt te gaan slapen)
 
Jac E

Jac E

21/09/2014 01:08:54
Quote Anchor link
http://www.phptuts.nl/view/34/ Deze gebruikte ik. Alleen van de namen een string gemaakt zodat ik e.e.a. in een database kan wegschrijven.
Gewijzigd op 21/09/2014 01:53:09 door Jac E
 
Ozzie PHP

Ozzie PHP

21/09/2014 01:12:41
Quote Anchor link
"Alleen van de namen een string gemaakt"

Daar ga je weer met je verwarrende uitspraken... wat bedoel je? Voorbeeld aub... over 5 min. ben ik weg...
 
Jac E

Jac E

21/09/2014 01:33:32
Quote Anchor link
Heb bijvoorbeeld "voornaam" vervangen door $voornaam.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<p>
            <label
                for="vraag_text"
                class="field <?php if(!empty($_SESSION['errors']['$voornaam'])) echo 'error'; ?>"
            >Vraag:</label>
            <input type="text"
                id="$voornaam"
                name="$voornaam"
                value="<?php echo isset($_SESSION['input']['$voornaam']) ? $_SESSION['input']['$voornaam'] : ''; ?>"
            /> *
</p>    
Gewijzigd op 21/09/2014 01:33:59 door Jac E
 
Ozzie PHP

Ozzie PHP

21/09/2014 01:41:10
Quote Anchor link
Ik snap niet wat je nu aan het doen bent. Waarom zou je dat vervangen? Volgens mij ben je nu zomaar wat aan het doen. Eerst zeg je dat je wil dat er "voornaam" staat, en dan ben je vervolgens verbaasd dat er $voornaam staat, terwijl je dat zelf zo hebt aangepast.

Ik ben er nu weg van. Wellicht kan morgen iemand anders je even helpen. Het zou wel handig zijn als je (nogmaals) eens duidelijk opschrijft wat je nu precies wilt en dat je niet zomaar op de gok iets gaat aanpassen.
 
Jac E

Jac E

21/09/2014 01:48:20
Quote Anchor link
Ik wil dus de gegevens naar mijn database sturen. Die array moet omgezet worden denk ik in voor gedefinieerde strings zoals $voornaam en $achternaam. Dan kom ik een heel eind.
 
Obelix Idefix

Obelix Idefix

21/09/2014 13:13:32
Quote Anchor link
Eric Eijkelboom op 21/09/2014 01:33:32:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<input type="text" id="$voornaam" name="$voornaam"
                value="<?php echo isset($_SESSION['input']['$voornaam']) ?
?>

Volgens mij gaat dat met $voornaam zo niet werken; je plaatst ze direct in html.
Gewijzigd op 21/09/2014 13:14:02 door Obelix Idefix
 
Ozzie PHP

Ozzie PHP

21/09/2014 18:17:01
Quote Anchor link
@Eric.... leg eens in Jip en Janneke taal uit wat je wilt. Dus zonder woorden als "gedefinieerde" en "strings". Gewoon heel simpel... een gebruiker komt op jouw site, en dan... wat wil je dat er gebeurt...
 
Jac E

Jac E

21/09/2014 21:00:16
Quote Anchor link
Je komt op de pagina terecht waar je o.a. je voornaam en achternaam moet invullen. Deze gegevens (en wat andere info) komen in een array terecht. Wanneer alle gegevens goed zijn ingevuld worden de ingevoerde gegevens onder elkaar op het scherm getoond.
De bedoeling is dat ik deze getoonde gegevens verder wil wegschrijven naar een database. Hoe kunnen deze gegevens omgezet worden? Ik wil dat de eerste waarde $voornaam wordt en de twee waarde $achternaam enz. Hierna kan ik $voornaam en $achternaam wegschrijven naar de database.


Toevoeging op 21/09/2014 21:39:34:

Dit is het laatste script gedeelte. Wat moet ik waar plaatsen? Moet ik hiervoor functie serialize() gebruiken?

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
// Verwerk het formulier als er geen fouten zijn
    if(empty($_SESSION['errors']))
    {
        $content[] = '<p><b>Het resultaat, de input:</b></p>';
        $content[] = '<ul>';
        foreach($_SESSION['input'] as $key => $value)
        {
            $content[] = '<li>'.$key.': '.$value.'</li>';
        }
        $content[] = '</ul>';
        
        unset($_SESSION['input']);
    }
Gewijzigd op 21/09/2014 21:40:51 door Jac E
 
Ozzie PHP

Ozzie PHP

21/09/2014 21:49:26
Quote Anchor link
>> Ik wil dat de eerste waarde $voornaam wordt en de twee waarde $achternaam enz. Hierna kan ik $voornaam en $achternaam wegschrijven naar de database.

Die waardes staan in je $_POST array.

Doe maar eens:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo '<br>Voornaam: ' . $_POST['voornaam'];
?>
 
Jac E

Jac E

21/09/2014 23:17:58
Quote Anchor link
Ja het werkt nu. Super bedankt! Ik heb er veel van geleerd.
 
Ozzie PHP

Ozzie PHP

21/09/2014 23:27:40
Quote Anchor link
Mooi zo, daar zijn we voor ;)
 



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.