een vraag over Form Validation Class
Ik wil graag het Form Validation Class gebruiken die op: http://www.phphulp.nl/php/script/classes/form-validation-class/1946/ staat.
Ik heb al aanpassingen gedaan en het werkt prima.
Maar ik had graag nog een textearia met 5 rows erbij gehad waar ook verplicht iets moet worden ingevuld.
Na vele pogingen heef ik het op en vraag hier nu om hulp.
Kan mij iemand op weg helpen?
Met dank
Code (php)
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
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
<?php
public function setTextarea($name, $label = '', $example = '')
{
$field = '';
//Check if a label is set, if so display the label
if(isset($label))
{
$field .= '<label for="'.$name.'">'.$label.'</label>';
}
//Check if an example is set
if(isset($example))
{
$field .= ' <span class="example">'.$example.'</span>';
}
//Check if we have errors for this field, if so display them
if(isset($this->_validationErrors[$name]))
{
$field .= '<p class="error-message">'.$this->_validationErrors[$name].'</p>';
}
//Create the input tag and set some attributes
$field .= '<p><textarea id="'.$name.'" name="'.$name.'"';
//Check if we have errors, if so create a css class for a red border
if(isset($this->_validationErrors[$name]))
{
$field .= ' class="error-border"';
}
//Check if data was posted, if so set the value attribute to display it in the field
if(isset($this->_post[$name]))
{
$value = $this->_post[$name];
}
//Close the field
$field .= '>'.$value.'</textarea></p>';
return $field;
}
?>
public function setTextarea($name, $label = '', $example = '')
{
$field = '';
//Check if a label is set, if so display the label
if(isset($label))
{
$field .= '<label for="'.$name.'">'.$label.'</label>';
}
//Check if an example is set
if(isset($example))
{
$field .= ' <span class="example">'.$example.'</span>';
}
//Check if we have errors for this field, if so display them
if(isset($this->_validationErrors[$name]))
{
$field .= '<p class="error-message">'.$this->_validationErrors[$name].'</p>';
}
//Create the input tag and set some attributes
$field .= '<p><textarea id="'.$name.'" name="'.$name.'"';
//Check if we have errors, if so create a css class for a red border
if(isset($this->_validationErrors[$name]))
{
$field .= ' class="error-border"';
}
//Check if data was posted, if so set the value attribute to display it in the field
if(isset($this->_post[$name]))
{
$value = $this->_post[$name];
}
//Close the field
$field .= '>'.$value.'</textarea></p>';
return $field;
}
?>
Na een tijd zoeken zie niet niet waar en op welke line die onbekende $ kan zitten.
Ik doe nogthans echt mijn best
In zo'n gevallen kan je best de variabele al aanmaken voor de if, met een standaard waarde (lege string).
ik kan nu verder doen om het te laten werken
nog 1 en ander uitzoeken nu
Toevoeging op 01/12/2012 08:03:18:
Toevoeging op 01/12/2012 08:04:54:
Nog een foutje gevonden:
lijn 40 moet:
zijn.
Toevoeging op 01/12/2012 11:21:03:
ik heb nu nog een vraag,
ik wil het form mailen,
maar ik krijg enkel het aanbodveld op de ontvangen mail,
maar alle vars kan ik wel echo'en
wat doe ik nu mis?
Code (php)
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
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
if($validation->validateFields($_POST))
{
//validateFields() returns TRUE, Process the mai
echo"alles ok";
echo "<br />";
echo ($_POST['name']);
echo "<br />";
echo ($_POST['vname']);
echo "<br />";
echo ($_POST['tel']);
echo "<br />";
echo ($_POST['email']);
echo "<br />";
echo ($_POST['bbat']);
echo "<br />";
echo ($_POST['tafels']);
echo "<br />";
echo ($_POST['aanbod']);
echo "<br />";
echo "regelment gelezen";
echo "<br /><br />";
$to = 'naar waar de mail verstuurd word ';
$onderwerp = 'PHP Email formulier ingevuld';
$bericht = $_POST['name']."\n\n";
$bericht = $_POST['vname']."\n\n";
$bericht = htmlspecialchars($_POST['tel'])."\n\n";
$bericht = htmlspecialchars($_POST['email'])."\n\n";
$bericht = htmlspecialchars($_POST['bbat'])."\n\n";
$bericht = htmlspecialchars($_POST['tafels'])."\n\n";
$bericht = htmlspecialchars($_POST['aanbod'])."\n\n";
$headers = "from: ".htmlspecialchars($_POST['email'])."\n\n";
mail($to, $onderwerp, $bericht, $headers);
}
{
//validateFields() returns TRUE, Process the mai
echo"alles ok";
echo "<br />";
echo ($_POST['name']);
echo "<br />";
echo ($_POST['vname']);
echo "<br />";
echo ($_POST['tel']);
echo "<br />";
echo ($_POST['email']);
echo "<br />";
echo ($_POST['bbat']);
echo "<br />";
echo ($_POST['tafels']);
echo "<br />";
echo ($_POST['aanbod']);
echo "<br />";
echo "regelment gelezen";
echo "<br /><br />";
$to = 'naar waar de mail verstuurd word ';
$onderwerp = 'PHP Email formulier ingevuld';
$bericht = $_POST['name']."\n\n";
$bericht = $_POST['vname']."\n\n";
$bericht = htmlspecialchars($_POST['tel'])."\n\n";
$bericht = htmlspecialchars($_POST['email'])."\n\n";
$bericht = htmlspecialchars($_POST['bbat'])."\n\n";
$bericht = htmlspecialchars($_POST['tafels'])."\n\n";
$bericht = htmlspecialchars($_POST['aanbod'])."\n\n";
$headers = "from: ".htmlspecialchars($_POST['email'])."\n\n";
mail($to, $onderwerp, $bericht, $headers);
}
Kan mij iemand een tip geven?
Gewijzigd op 01/12/2012 08:05:43 door elian degroot