Toon posts:

PHP javascript universal form checker

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een systeem waarin enquetes kunnen worden aangemaakt. Omdat ik nooit de
naam van een formfield kan ik niet de line 'document.form.[fieldname]' gebruiken.
Ik ben dus op zoek naar een universele form check die ckeckt of er in een textfield,
radiobutton, ckeckbox enz een waarde staat.

Op deze manier maakt ik forms aan:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
   $res = mysql_query("select * from question");
   $aantal = mysql_num_fields($res);
   $i=1;
   while ($i<$aantal){
    $type  = mysql_field_type($res, $i);
    $naam = mysql_field_name($res, $i);
    $lengte = mysql_field_len ($res, $i);
    $id = substr ($naam, -2);
    if ($type =="string"){
    ?>
     <tr> 
      <td width="33%"><?php echo $naam?></td>
      <td width="67%"><input type="text" name="<?php echo $naam?>"></td>
     </tr>
     


Ik heb al geprobeerd om PHP in Javascript te zetten: document.form.
maar dat werkt dus niet.

Please help!!

[ Voor 12% gewijzigd door Rafe op 10-10-2003 12:29 . Reden: code wat leesbaarder gemaakt met behulp van [code] tags ]


  • cdgrit
  • Registratie: Mei 2002
  • Laatst online: 25-08 20:18
Wat wil je nu eigenlijk? Waarom is de naam niet gewoon steeds hetzelfde?


Originele startpagina - Stadindex.nl


Verwijderd

Topicstarter
Omdat bij elke enquetevraag er een check gedaan moet worden of er wel een waarde is ingevult. Er zijn misschien wel 300 vragen dus om voor elke vraag een check te schrijven kan dus niet.
De naam van de form word uit een DB gehaald zodat ik variabele forms kan maken.

  • Arnaud
  • Registratie: Mei 2000
  • Laatst online: 02-08 18:07
Dit lijkt me heel erg basic en kun je waarschijnlijk hier op GOT of via Google makkelijk terugvinden. Hints om verder mee te zoeken: Loops
Array: For...Next, Upper en Lower Limit, Count
Collection: For Each.... Next

  • SinergyX
  • Registratie: November 2001
  • Laatst online: 23:15

SinergyX

____(>^^(>0o)>____

code:
1
="<?php echo $naam?>"></

moet dat dan niet zijn
code:
1
="<?php echo $naam;?>"></


anders moet je toch een parse-error krijgen

Nog 1 keertje.. het is SinergyX, niet SynergyX
Im as excited to be here as a 42 gnome warlock who rolled on a green pair of cloth boots but was given a epic staff of uber awsome noob pwning by accident.


  • cdgrit
  • Registratie: Mei 2002
  • Laatst online: 25-08 20:18
document.form.<?PHP echo $naam ?> werkt niet, maar deze dan:

document.form.<?PHP echo $naam ?>.value


Originele startpagina - Stadindex.nl


Verwijderd

Topicstarter
Dit heb ik al geschreven, maar het sluit niet aan op PHP en mijn DB:

code:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
function CheckRequiredFields() {
var errormessage = new String();
// Put field checks below this point.

if(NoneWithCheck(document.form.<?php echo $naam?>))
    { errormessage += "\n\nPlease click one radio button."; }
if(WithoutCheck(document.form.checkLoner))
    { errormessage += "\n\nThe \"Loner\" check box must be checked."; }
if(WithoutContent(document.form.sometext.value))
    { errormessage += "\n\nPlease type something in the text field."; }
if(NoneWithContent(document.form.oneOrTheOther))
    { errormessage += "\n\nSomething must be typed in the text fields."; }
if(WithoutSelectionValue(document.form.dropname))
    { errormessage += "\n\nPlease select something from the dropdown list."; }

// Put field checks above this point.
if(errormessage.length > 2) {
    alert('NOTE:' + errormessage);
    return false;
    }
return true;
} // end of function CheckRequiredFields()


function WithoutContent(ss) {
if(ss.length > 0) { return false; }
return true;
}

function NoneWithContent(ss) {
for(var i = 0; i < ss.length; i++) {
    if(ss[i].value.length > 0) { return false; }
    }
return true;
}

function NoneWithCheck(ss) {
for(var i = 0; i < ss.length; i++) {
    if(ss[i].checked) { return false; }
    }
return true;
}

function WithoutCheck(ss) {
if(ss.checked) { return false; }
return true;
}

function WithoutSelectionValue(ss) {
for(var i = 0; i < ss.length; i++) {
    if(ss[i].selected) {
        if(ss[i].value.length) { return false; }
        }
    }
return true;
}

//-->
</script>

[ Voor 6% gewijzigd door Rafe op 10-10-2003 12:30 . Reden: code leesbaarder gemaakt ]


  • Arnaud
  • Registratie: Mei 2000
  • Laatst online: 02-08 18:07
http://www.webmasterengine.com/php/Form_Processors_/ Hier staat vast tussen wat je zoekt. Dit is de eerste hit als je met google zoekt op "php form collection validate"

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 28-08 12:00

Janoz

Moderator Devschuur®

!litemod

Ikzelf ben ongeveer met hetzelfde bezig. Ik laat naast mijn formulier velden ook validatie script genereren. Op die manier kan ik ook verschillende eisen opnemen per formulier onderdeel. Dit doe ik door een lange string te genereren met functieaanroepen. Dit laat ik bij het submitten uitvoeren met eval. Ik kan je geen voorbeeld geven aangezien ik J2EE gebruik en mijn vragen genereer met een taglib ;).

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1