Met het schrijven van een cms ben ik bezig. Bij het invoeren worden een aantal fout controles gedaan. Mijn vraag hoe kan ik nu het beste mijn meldingen verwerken.
Ik wil voorkomen dat bij iedere melding ik een stuk html (tabellen ed) moet gebruiken.
Daarom had ik zelf bedacht De message box te activeren en een message te defieneeren.
Als ik dit doe dan werkt alleen de laatste melding als er bij het invoeren meerdere fouten gemaakt.
Ik wil voorkomen dat je van laag in laag komt met de {} (ik weet niet hoe die heten)
Nou kan ik het zo afhandelen
Door per controle een result ok af te geven maar ik heb het gevoel dat het ook anders.
Heeft iemand een idee welke kant ik uit moet denken
Is het ook mogelijk om op het moment dat je melding moet gaan geven je doorverwezen naar een andere pagina. Dan stopt je script toch ook.
Mijn melding afhandeling ziet er zo uit:
Ik wil voorkomen dat bij iedere melding ik een stuk html (tabellen ed) moet gebruiken.
Daarom had ik zelf bedacht De message box te activeren en een message te defieneeren.
Als ik dit doe dan werkt alleen de laatste melding als er bij het invoeren meerdere fouten gemaakt.
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
47
48
49
50
51
52
| if($_REQUEST['actie'] == "topmenu_atd"){ if(empty($_POST['topmenu_name'])) { $messagebox = 'on'; $message = $lang_topmenu_no_name; } if($_POST['indetification'] && mysql_result (mysql_query ("SELECT COUNT(naam) FROM $db_name WHERE naam LIKE '{$_POST['naam']}'"),0)) { $messagebox = 'on'; $message = $lang_topmenu_name_exists; } if($messagebox != 'on'){ ## Selecting max order $result=mysql_query("SELECT MAX(menu_order) AS max_order FROM header_menu ")or die (mysql_error()); $row=mysql_fetch_object($result); $max_ord = intval($row->max_order); $next_order = $max_ord + 10; ## Setting time $time =("".time().""); ## Data to database mysql_query("INSERT INTO header_menu ( naam, menu_status, menu_order, datum )VALUES( '{$_POST['topmenu_name']}', '{$_POST['show_hide']}', '$next_order', '$time' )")or die(mysql_error()); ## Show it, if succesful $messagebox = 'on'; $message = $lang_topmenu_succesful_added; } } |
Ik wil voorkomen dat je van laag in laag komt met de {} (ik weet niet hoe die heten)
Nou kan ik het zo afhandelen
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| if(empty($_POST['topmenu_name'])) { $messagebox = 'on'; $message = $lang_topmenu_no_name; } else { $result = 'ok'; } if($result = 'ok'){ if($_POST['indetification'] && mysql_result (mysql_query ("SELECT COUNT(naam) FROM $db_name WHERE naam LIKE '{$_POST['naam']}'"),0)) { $messagebox = 'on'; $message = $lang_topmenu_name_exists; } } |
Door per controle een result ok af te geven maar ik heb het gevoel dat het ook anders.
Heeft iemand een idee welke kant ik uit moet denken
Is het ook mogelijk om op het moment dat je melding moet gaan geven je doorverwezen naar een andere pagina. Dan stopt je script toch ook.
Mijn melding afhandeling ziet er zo uit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
| if($messagebox = 'on'){ echo(" <table cellspacing=\"2\" cellpadding=\"2\" border=\"0\"> <tr> <td class=\"inputname\"> $message </td> </tr> </table> "); } |