Antworten auf deine Fragen:
Neues Thema erstellen

Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

kevin_web_web

Noch nicht viel geschrieben

Hallo,

mal eine ganz allgemeine Frage, fallen euch auf Anhieb irgendwelche Gründe ein, warum nach dem Abschicken eines Formulars (method post) die gesuchte Post-Variable im var_dump enthalten ist, aber die Ausgabe von $_POST['feldname'] leer bleibt?

Gruß, Kevin
 

sokie

Mod | Web

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

was mit var_dump($_POST['feldname']) eine Ausgabe erzeugt wird sie auch mit
Code:
echo $_POST['feldname'];
erzeugen
 

kevin_web_web

Noch nicht viel geschrieben

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Ich arbeite in diesem Fall nicht mit echo, sondern mit return. Habe zum Beispiel folgenden Code:

PHP:
$testvar1= $_POST['feldname'];
$testvar2 = 'teststring'; 
return $testvar1.$testvar2;
Dieser Code gibt mit nur "teststring" aus, aber wie ich schon geschrieben hab, der ins Feld "feldname" eingegebene Code wird definitiv übermittelt, bzw ist definitiv im var_dump enthalten. Wie kann das denn sein, das mir $_POST['feldname'] keine Ausgabe gibt?
 

Duddle

Posting-Frequenz: 14µHz

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Wenn du mit return arbeitest, bist du wohl innerhalb einer Funktion?
$_POST-, $_GET- und ähnliche Variablen sind aber nicht global (glaube ich zumindest). Das heisst, du kannst nur darauf zugreifen, wenn du der Funktion selbst die entsprechenden Variablen übergibst, bzw. sie nochmal global neu definierst.


Duddle
 

kevin_web_web

Noch nicht viel geschrieben

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Hi duddle,

bist du sicher? bzw. ich glaube die Tatsache, das der Wert aus dem Feld "feldname" im var_dump enthalten ist, würde dafür sprechen, das das Programm beim auslesen noch innerhalb der selben funktion ist, würde ich jetzt vermuten. Lasse mich aber gerne eines besseren belehren wenn das doch nicht so ist.
 

Duddle

Posting-Frequenz: 14µHz

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Hi duddle,
bist du sicher?

Nein, und ich habe es eben mal ausprobiert und lag falsch.

Vielleicht kannst du ja mehr von deinem Code posten, damit man das mal nachvollziehen kann. Irgendwo muss ein Fehler drin stecken. Meine wilde Vermutung läge jetzt bei "Tippfehler" :p



Duddle
 

sokie

Mod | Web

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

die superglobalen stehen natürlich in einer funktion zur verfügung.
In meinen Test wurde auch beides korrekt zurückgegeben:
Code:
<?
function ausgabe(){
  $string = "teststring";
  $eingabe = $_POST['feldname'];
  return $string.$eingabe;
}
var_dump(ausgabe());
?>
//Ausgabe "teststring" + meiner eingabe
 

saila

Moderatorle

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Grundsätzlcih stehen globale vordefinierte Fariablen eben global zur Verfügung. Somit auch in Funktionen.

Was allerdings noch nicht beantwortet wurde - befindest du dich bei der Rückgabe durch Return in einer Funktion?

Abgesehen davon wäre diese dann zu korrigieren:
PHP:
<?php
function test() {
 $var1 = isset($_POST['feldname']) ? $_POST['feldname'] : 'nö kein Feldname';
 $var2 = ' Teestausgabe $var2';
 return $var1 .' '. $var2;
}
?>

Voraussetzung ist natürlich, dass ein submit zuvor ausgelöst wird. Ansonsten nützt der Aufruf der Funktion test() nur was ohne den POST-Wert, welcher in der Funktion test() verarbeitet werden soll.

Darüber hinaus muss die Funktion auch letztlich in jener Datei eingebunden werden, welche mit dem Submit in Zusammenhang steht.

Ein Return ohne eine Funktion nützt nichts, da lediglich print oder echo zu einer Ausgabe führen.
 

kevin_web_web

Noch nicht viel geschrieben

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Der Code für die komplette Datei mit der Funktion, es ist ein Hook für die TYPO3-Extension tt_news:

PHP:
class tx_sendmessage{

     function extraItemMarkerProcessor($markerArray, $row, $lConf, $obj) {  
     //error_reporting(E_ALL);

          $formular = '<form action="index.php?id='.$GLOBALS["TSFE"]->id.'&tx_ttnews[tt_news]='.$row['uid'].'&sent=1" method="POST">
                       <input type="text" id="feldname" name="feldname" />
                       <input type="submit">
                       </form>';
          
          $button   = '<a class="icon" onclick="showForm();return false;" href="index.php?id='.$GLOBALS["TSFE"]->id.'&tx_ttnews[tt_news]='.$row['uid'].'&senden=1">'.$text7.'</a>';
          

             if(t3lib_div::_GET('senden')) {
                    $markerArray['###FORM###'] = $formular;            
               }  
               if(t3lib_div::_GET('sent')) {
               $status   = t3lib_div::_POST('surname');
               

               $var1 = isset($_POST['feldname']) ? $_POST['feldname'] : 'noe kein Feldname';
               $ausgabe = ' Teestausgabe'.$var1;
                          
    //   $ausgabe = var_dump($_POST['username'], true).'teststring'; 
                   
                     $markerArray['###FORM###'] = $ausgabe; 
            }

          return $markerArray;
     }

}

Mittlerweile gehe ich davon aus, das es irgendwie an der function von tt_news liegt, wo dieses Script hier ansetzt, obwohl es halt trotzdem komisch wäre. Oder hier ist doch noch irgendein Fehler drin, den ich übersehen habe, ich habe allerdings schon doppelt und zehnfach gecheckt.
 

kevin_web_web

Noch nicht viel geschrieben

AW: Variable ist im var_dump, aber Ausgabe mit $_POST ist leer

Hallo Leute,

Nachdem ich nun schon total genervt war, hab ich es auf einer anderen Domain ausprobiert, und dort funktioniert es. Dort wo es nicht funktionierte, verwende ich eine subdomain, nun liegt es möglicherweise daran, an der subdomain, bin mir aber noch nicht ganz sicher.

Update: Ursache für das hier beschriebene Problem ist anscheinend die TYPO3-Extension cooluri. Vielen Dank an dieser Stelle allen Postern für eure Antworten.

Gruß, Kevin
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.635
Beiträge
1.538.450
Mitglieder
67.557
Neuestes Mitglied
Charal
Oben