Skriptsprachen (PHP, Javascript, etc.) - Forum

Derzeit sind Sie als Gast in unserem Forum aktiv. Für das Schreiben registrieren Sie sich bitte. Unser Forum ist eine Austauschplattform für Webworker zum Kommunizieren, Helfen, Informieren und Hilfe finden. Auf der rechten Seiten finden Sie eine Forenübersicht über alle Bereiche des Webmaster-Forums. Unterhalb finden Sie alle aktuellen Themen.

Diskutieren Sie hier über die serverseitige Skriptsprachen PHP und Python und über dynamische Webseitenerstellung mit Javascript und Ajax.


nickname
Beiträge: 437

PN schreiben
Profil ansehen
User ist offline

Formularfüllstand überprüfen

Link zur Antwort auf "Formularfüllstand überprüfen" von nickname nickname, am Dienstag den 03.04.2012 um 19:04:15

Hallo,

ich hab ein Forumlar mit rund 40 Formularfeldern. Davon sind einige Optional und können später nachgetragen werden.

Natürlich ist es schön, wenn alles eingetragen ist. Daher wollte ich auf der Übersicht für jeden Eintrag anzeigen, wieviel % schon eingetragen sind.

Dafür habe ich ein array mit allen datenbankfeldern erzeugt und überprüfe dass dann auf vollständigkeit:

 
PHP
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
    $alleFelder = array("Daten","bank","felder");          
    $count = 0;
          $of = 0;
          foreach ($alleFelder as $key=>$value) {
            if($topic[$value] !== "" and $topic[$value] !== 0 and $topic[$value] !== "0" ){
              $count++;
            }else
            {
              //echo $value; //zum debuggen
            }
            $of ++; 
          }
          echo (round(($count / $of * 100),0)."%");
    ?>      

das klappt auch ganz gut, ich frage mich nur, ob es auch einfacher geht.

gruß

nN


Ninos Ego
Beiträge: 104

PN schreiben
Profil ansehen
Homepage besuchen
User ist offline
Link zur Antwort auf "Formularfüllstand überprüfen" von Ninos Ego Ninos Ego, am Mittwoch den 04.04.2012 um 15:20:11
 
PHP
1
$of

kannst durch

 
PHP
1
count($alleFelder) 

rauskriegen.

 
PHP
1
==""

würde ich ersetzen durch die Funktion

 
PHP
1
empty()

Ansonsten kannst auch, wenn ich mich nicht irre, via SQL-Statement die leeren Felder raussaugen, dort count() durchführen, genauso bei allen Feldern, und schon hast du beide notwendigen Zahlen. Oder du prüfst den gefüllten Array und filterst dort alle leeren values aus und machst anschließend darauf ein count() :D

PS: deine Zahl kann auch mal 0% sein, wegen dem floor(), würde prüfen, ob immerhin eine Variable gesetzt ist und den dann auf 1% stellen..^^

Insgesamt 2 mal bearbeitet, zuletzt am 10.04.2012 um 22:45:40