2009-06-24 13 views
1

Ich weiß, es ist PHP globale Variable, aber ich bin mir nicht sicher, was es tut? Ich habe auch von der offiziellen PHP-Seite gelesen, aber nicht verstanden.

+2

Ich weiß, das ist nit-wählerisch, aber PHP bezieht sich als superglobal :) zu. –

+0

tatsächlich ist es superglobal. –

Antwort

5

Möglicherweise möchten Sie über die Grundlagen von PHP zu lesen. Versuchen Sie, einleitende Tutorials zu lesen.

$_POST ist eine Variable zum Erfassen von Daten, die über ein Webformular gesendet werden.

Hier ist eine einfache Seite $_POST und wie beschreiben, es zu benutzen, von W3Schools: PHP $_POST Function

Grundsätzlich gilt:

HTML verwenden, wie dies auf der ersten Seite:

<form action="submit.php" method="post"> 
    Email: <input type="text" name="emailaddress" /> <input type="submit" value="Subscribe" /> 
</form> 

Dann auf submit.php Gebrauch etwas wie folgt:

<? 
    echo "You subscribed with the email address:"; 
    echo $_POST['emailaddress']; 
?> 
+0

Es ist auch Array. –

+0

Absolut. Die Informationen, die über Post-Daten gesendet werden, werden in der Superglobal-Variablen $ _POST als ein Array sortiert, das durch den Namen des Eingabeelements im Formular indiziert wird. – Travis

+0

@Sayed, ja, es ist ein associate-Array, ähnlich einem Hash in anderen Sprachen. Http://www.w3schools.com/php/php_arrays.asp – Josh

0

Sie enthält alle Werte, die von einem HTML-Formular zu diesem Skript gesendet werden.

+0

meinst du, was auch immer wir von HTML schreiben, wird es diese Werte halten? –

+0

Dies gilt nur, wenn ein Formular mit einem POST-Typ verwendet wird. Tatsächlich sind HTML-Formulare nur Abstraktionen über HTTP-POST-Anfragen, von denen die Daten in $ _POST tatsächlich stammen. –

+0

alles aus Eingaben innerhalb einer

Form :) –

1

Es wird verwendet, um CGI-Eingaben über einen POST zu speichern, der an Ihre Seite gesendet wurde.

Beispiel:

 

Your page contains: 

<form action="welcome.php" method="post"> 
Name: <input type="text" name="fname" /> 
Age: <input type="text" name="age" /> 
<input type="submit" /> 
</form> 


One the user submits the values input into the form, you can access those variables through $_POST using the names you provided for the input tags. 

Welcome <?php echo $_POST["fname"]; ?>!<br /> 
You are <?php echo $_POST["age"]; ?> years old. 

1

$ _POST wird verwendet, um Werte abzurufen, die über eine POST-Anfrage an Ihre Seite übergeben wurden.

Beispielsweise verwendet Ihre Seite ein Formular, um Daten an eine andere Seite in Ihrer Anwendung zu übergeben. Ihr Formular würde haben

<form method="post"> 

diese Werte über POST übergeben.

Es wird von $ _GET abgeglichen, die die gleiche Funktion für GET-Anforderungen ausführen.

Wenn Sie in der Lage sein wollen, verweisen entweder GET/POST-Werte, können Sie $ _REQUEST

1

Sie können Post Werte aus Formularen erfassen:

Beispiel:

<form method="POST"> 
    <input type="text" name="txtName" value="Test" /> 
</form> 

Um dies Sie verwenden:

$_POST["txtName"]; 
1

Es enthält Daten per HTTP-Post gesendet, ist dies meist f aus einem HTML-Formular.

<form action="page.php" method="post"> 
<input type="text" name="email" ...> 
... 
</form> 

Wird von

$_POST["email"] 
1

Es enthält die vorgelegten Daten über die POST-Methode, und nur die POST-Methode, im Vergleich zu übermittelten Daten über die GET-Methode zugänglich sein. Die Superglobal-Variable $ _REQUEST enthält sowohl $ _POST- als auch $ _GET-Daten.

+0

Sie meinen, wenn Formular mit Post-Methode gebucht wird, alle Variable innerhalb dieses Formulars sind auch über $ _REQUEST ['variable'] zugänglich –

+0

Die POST-Daten sind auch von $ _REQUEST zugänglich. Ich benutze das nicht selbst, aber ich habe gesehen, dass es die Formulartypen austauschbar macht. –

1

Wenn Daten über ein Formular an den Server gesendet wird, greifen Sie es durch die $ _POST Array:

<form method="post"> 
    <p><input type="text" name="firstname" /></p> 
    <p><input type="submit" /></p> 
</form> 

-

<?php 

    if ($_POST) 
    print $_POST["name"]; 

?> 

Nicht alle Daten werden über $ gesendet _POST durch. Datei-Uploads erfolgen über $ _FILES.

4

Es gibt im Allgemeinen zwei Möglichkeiten, eine HTTP-Anforderung an einen Server zu senden:

  • GET
  • POST

Angenommen, Sie haben eine <Form> auf einer Seite.

 
<form method="post"> 
    <input type="text" name="yourName" /> 
    <input type="submit" /> 
</form> 

Beachten Sie, dass das Attribut "method" des Formulars auf "post" gesetzt ist. In dem PHP-Skript, das diese HTTP-Anfrage empfängt, hat $ _POST ['IhrName'] den Wert, wenn dieses Formular gesendet wird.

Wenn Sie die GET-Methode in Ihrem Formular verwendet hatte:

 
<form method="get"> 
    <input type="text" name="yourName" /> 
    <input type="submit" /> 
</form> 

Dann $ _GET [ 'yourname'] wird der Wert durch das Formular eingesandt.

$ _REQUEST ['IhrName'] enthält alle Variablen, die gepostet wurden, unabhängig davon, ob sie von GET oder POST gesendet wurden.

+0

macht es jetzt Sinn für mich. –

1

Wie in Hypertext Transfer Protocol specifications definiert, gibt es mehrere Arten von Anforderungen, die ein Client (Webbrowser) an eine Ressource (Webserver) stellen kann.

Die zwei häufigsten Arten von Webanforderungen sind GET und POST. PHP lädt automatisch alle Clientanforderungsdaten in die globalen Arrays $_GET und $_POST, basierend auf dem Typ der empfangenen Webanforderung. Die Art der Anfrage ist für den Benutzer des Webbrowsers transparent und basiert einfach auf dem, was auf der Seite vor sich geht. Im Allgemeinen erzeugt jeder reguläre Link, auf den Sie klicken, eine GET-Anforderung, und jedes von Ihnen gesendete Formular wird als POST-Anforderung erstellt.

Wenn Sie auf einen Link klicken, die auf „http://example.com/index.php?x=123&y=789“ geht, dann wird index.php haben es $_GET Array mit $_GET['x'] = '123' und $_GET['y'] = '789' bevölkert.

Wenn Sie ein Formular, das die folgende Struktur hat:

<form action="http://example.com/index.php" method="post"> 
<input type="text" name="x"> 
</form> 

Dann wird das Empfangs Skript, index.php, wird es $_POST Array mit $_POST['x'] = 'whatever you typed into the textbox named x' bevölkert;

1

Es gibt zwei Möglichkeiten, Daten von einem Formular an eine Webanwendung, GET und POST, zu senden.

GET sendet die Daten als Teil der URL-Zeichenfolge: http://www.example.com/get.html?fred=1&sam=2 ist ein Beispiel dafür, wie das aussehen würde. Es gibt einige Probleme mit der Verwendung für die gesamte Verarbeitung, eine der größten ist, dass jeder Browser eine andere maximale Länge für die Abfrage-Zeichenfolge hat, so dass Sie Ihre Daten möglicherweise abgeschnitten haben.

POST sendet sie separat von der URL. Sie vermeiden das kurze Längenlimit, außerdem können Sie mit POST binäre oder verschlüsselte Daten senden.

Im ersten Beispiel oben kann PHP die Werte abrufen, die von $ _GET ['fred'] und $ _GET ['sam'] gesendet wurden. Sie würden $ _POST stattdessen verwenden, wenn das Formular POST war.

Wenn Sie sich fragen, welche Methode Sie verwenden sollten, start here