2012-04-05 4 views
0

Ich habe ein System für Benutzer, um eine Fahrerlaubnis zu beantragen. Bei der Codierung dieses Systems hatte ich jedoch ein Problem, und das Problem, dem ich jetzt gegenübersehe, ist, dass ich nicht weiß, wie ich einen Wert von einem Formular an die Anwendung weitergeben kann, die Seite des Prozessors übergebe und schließlich die medizinische Fragebogenseite auf der Seite des medizinischen Prozessors verwendet werden. In meinem BeispielGibt es eine bessere Möglichkeit, Werte von Seite 1 an Seite 3 zu übergeben?

Die Übersicht Layout:

apply2.php> apply_now.php> medical_question.php> medical_question_now.php> success.php

Die wichtigste Frage:

Was ist der beste Weg, um einen $selectedPermit=$_POST['cat']; Wert von apply_now.php zu medical_question_now.php zu übertragen?

Die Erklärung:

Ich habe eine Checkbox Form in apply2.php und beim Anklicken abgesendet haben, werden sie möglicherweise einen Link zu apply_now.php.

In apply_now.php (PHP-Prozessor-Seite) konnte ich den ausgewählten Wert auf dem Kontrollkästchen abrufen und hier einige Verarbeitung durchführen. z.B. Wenn der Benutzer in den letzten 3 Jahren keinen medizinischen Fragebogen ausgefüllt hat, bringt er ihn zur medizinischen Fragebogenseite, ohne irgendwelche Daten in die Datenbank einzufügen. Wenn sie den medizinischen Fragebogen vorher gemacht haben, geht es direkt zur Erfolgsseite.

Im medizinischen Fragebogen gibt es 23 Fragen und jede Antwort wird über die Seite medical_questionnair_now.php in der Datenbank gespeichert.

medical_question_now.php (eine PHP-Prozessor-Seite) besteht aus Abfrage, um die medizinischen Fragebogen Antworten in die Datenbank einzufügen, jedoch möchte ich den Wert, der aus dem Kontrollkästchen in apply2.php abgerufen wurde.

Success.php ist nur eine Seite, um ihnen Herzlichen Glückwunsch zu sagen.

Meine aktuelle Idee: Ich denke, es gibt 2 Möglichkeiten, wie ich die Daten überbringen könnte.

  1. Kombinieren apply_now.php mit medical_question.php zusammen.

  2. Verwenden Sie versteckte Eingabe, was bedeutet, dass die Prozessorseite den Benutzern zugänglich sein muss.

  3. Nach einigen Recherchen fand ich heraus, dass SESSION mir helfen kann, es zu erreichen, aber jeder hat eine Idee, wie ich SESSION dazu benutzen kann? (Kann ich grobe Erklärung für SESSION, damit ich es ausprobieren kann)

Ich hoffe, mit PHP zum besseren Verständnis Zweck zu bleiben, aber wenn euch denken, es ist eine bessere Javascript(), die helfen kann, das ist leicht verständlich, bitte führe mich ... Ich möchte neue Dinge lernen.Dank

Noch eine Frage

Eine andere Frage Ich mag würde, ist zu fragen, ob auf meinem PHP-Prozessor Seite, würde Ich mag das Echo mit Alarm ersetzen();

if($missing1=='1' or $missing2=='1') 
     { 
      echo '<script>alert("Sorry. You did have not met the Pre-Requisites for '.$permit .'");</script>'; 
      header ('Location:s_apply2.php'); 
     } 

statt dies: Das kann ich gehen

if($missing1=='1' or $missing2=='1') 
     { 
      echo"Did not meet pre-requisites for $permit"; 
     } 

Vielen Dank für Ihre Hilfe ... Ich habe eine Menge von hier gelernt. Danke Danke im Voraus.

+0

Verwendung Sitzung in PHP –

Antwort

1

Session Mit

session_start(); 
$selectedPermit = $_POST['cat']; 
$_SESSION['selectedPermit'] = $selectedPermit; 

Auf einer anderen Seite Verwendung:

session_start(); 
echo $_SESSION['selectedPermit']; 

Javascript Frage:

if($missing1=='1' or $missing2=='1') 
    { 
     echo '<script>alert("Sorry. You did have not met the Pre-Requisites for '.$permit .'");\n"; 
     echo 'location.href="s_apply2.php";</script>'; 
     // header ('Location:s_apply2.php'); use javascript instead of header function 

    } 

Grüße

+0

Danke für die Beratung ... notiert ... ich werde Echo in Zukunft in diesem Fall wieder verwenden ... danke – Hubert

4

Ich würde vorschlagen, tatsächlich die PHP-Dokumentation auf Sitzung Lesung für den Umgang mit wie $_SESSION zu verwenden: http://us3.php.net/manual/en/book.session.php

Ein kurzer Auszug aus der Einleitung:

Session Unterstützung in PHP bietet die Möglichkeit besteht zu erhalten bestimmte Daten über nachfolgende Zugriffe. Dadurch können Sie mehr benutzerdefinierte Anwendungen erstellen und die Attraktivität Ihrer Website erhöhen.

Ein Besucher, der auf Ihre Website zugreift, erhält eine eindeutige ID, die sogenannte Sitzungs-ID. Dies wird entweder in einem Cookie auf der Seite des Benutzers gespeichert oder in der URL weitergegeben.

Die Sitzungsunterstützung ermöglicht das Speichern von Daten zwischen Anforderungen im Superglobal-Array $ _SESSION . Wenn ein Besucher auf Ihre Site zugreift, überprüft PHP automatisch (wenn session.auto_start auf 1 gesetzt ist) oder unter Ihre Anfrage (explizit über session_start() oder implizit über session_register()), ob eine bestimmte Sitzungs-ID gesendet wurde die Anfrage. Wenn dies der Fall ist, wird die zuvor gespeicherte Umgebung neu erstellt.

+0

leid, aber wie lagere u Ein Array führt zu Session? Ist es möglich? Weil das Ergebnis von der Checkbox ein Array sein würde – Hubert

1

Ich stimme der Sitzung Methode. Zum Beispiel, wenn Sie eine Fehlermeldung von einer Suchseite und schicken Sie es zurück an den Hauptindex erhalten möchten, können Sie dies auf der Suchseite tun, wo die Fehlerfeststellung sein sollte:

session_start(); 
$_SESSION['error'] = "Error! You have done something wrong!"; 
header('Location: index.php'); 

Dann auf dem Index .php-Seite, etwa wie folgt:

Dann Echo $ Fehler, wo Sie möchten, dass die Nachricht angezeigt wird. Sie legt die Variable auf der Seite fest und löscht die Sitzung. Wenn Sie den Fehler anzeigen und die Seite dann aktualisieren, ist die Fehlermeldung nicht mehr vorhanden.

Verwandte Themen