1Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
6
6
ZUGRIFFE
364
364
EMPFEHLEN
-
hallo liebe tutorials.de community
ich hoffe das ich hier ein paar nüztliche antworten von kompetenten usern erhalte
und ein teil von euch werde
hier mein problem:
PHP-Code://in dem vorigem formular ist ein dropdown was 'typ' übergibt entweder $d1 oder $d2
$d1 = array( 'd1.php', 'd2.php', 'd3.php');
$e1 = array( 'e1.php', 'e2.php', 'e3.php');
$typ = $_POST['typ']; // so kommt ein error = Uninitialized string offset: 1 in dieser php zeile der includes
// $typ = $d1; // so geht es komischerweise
include $typ[1];
//hier ist noch rechen content
include $typ[3];
//bitte um hilfe wie ich den typ übernehmen kann ohne einen error zu erzeugen
// vielen dank :) ;
-
29.12.11 17:12 #2
Hallo,
bist du dir sicher, dass das Formular wirklich fehlerfrei versendet wird und es auch ein Formularelement mit dem Namen "typ" gibt?
Poste mal die Ausgabe des folgenden Codes:
PHP-Code:var_dump($_POST);
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
danke für die schnelle hilfsbereitschaftPHP-Code:
array(5) { ["typ"]=> string(5) "de_w3" ["sex"]=> string(1) "M" ["vorname"]=> string(3) "max" ["name"]=> string(5) "power" ["gebname"]=> string(0) "" }

/e:
das hauptproblem ist eig das ich eine haupt vor auswahl treffe in noch einem formular vorher in der der typ per dropdown schon übernommen wird diese per post dann an das nächste formular gegeben wird und ich diese ja dann wieder laden und neu posten muss.
gibt es da vielleicht noch eine einfachere lösung?
lgGeändert von seomaniac (29.12.11 um 17:59 Uhr)
-
29.12.11 18:16 #4
Bitte achte auf Groß- und Kleinschreibung

Also entweder kannst du bei deinem 2. Formular ein verstecktes Input-Feld mit dem vorher ausgewähltem Typ hinzufügen:
Oder du kannst den Wert auch in der Session speichern:HTML-Code:<input type="hidden" name="typ" value="<?php GetTypeFromCurrentPOST(); ?>" />
PHP-Code:$_SESSION['form1_typ'] = GetTypeFromCurrentPOST();
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
danke für deine schnellen antworten

Ich habe es nun mit dem Hidden getestet:
es wird auch nun laut dem vardump übergeben:PHP-Code:<input type="hidden" name="typ" value="$<?php echo $_POST['typ'];?>" />
aber erstens Gefällt mir das nicht das der Hidden im Quelltext sichtbar ist undPHP-Code:array(5) { ["typ"]=> string(6) "$de_1"
zweitens gibt es dennoch einen Error in der kommenden php.
das ist wiedermal die include zeile :-/PHP-Code:Notice: Uninitialized string offset: 1 in ...php on line 109
ich habe es mit if else getestet vor include:
dann funktioniert es Komischerweise, hat wohl wirklich etwas mit dem dollar Zeichen zutun :-/PHP-Code:if ( $typ == "de_1" ) {
$typ = $de_1;
} else {
$typ = $typ;
}
wenn ich $typ = '$'.$typ; anstatt des ifs gebe dann tritt der Uninitialized string wieder auf.
gibt es denn evtl noch einen Besseren weg? da ich nicht immer wenn ich neue dinge integriere vorher ein neues if in die datei schreiben möchte.
lg
-
29.12.11 20:57 #6
Was willst du denn genau machen?
Zuerst sollte man überhaupt nicht Daten von außen für eine Include-Zeile benutzen. Aber auch das einfache Ausgeben des Strings aus $_POST kann gefährlich sein!
Siehe auch mein Tutorial: Sicherheit in PHP-Codes schaffen
Ist jetzt der Fehler beim Zugriff auf $_POST['typ'] oder bei $typ[1]?aber erstens Gefällt mir das nicht das der Hidden im Quelltext sichtbar ist und
zweitens gibt es dennoch einen Error in der kommenden php.
Probiere mal folgendes:
PHP-Code://in dem vorigem formular ist ein dropdown was 'typ' übergibt entweder $d1 oder $d2
$de_1 = array( 'd1.php', 'd2.php', 'd3.php');
if ( isset($_POST['typ']) )
{
$typ = $_POST['typ'];
if ( $typ == 'de_1' )
$typ = $de_1;
else
exit('Falscher Wert für Typ-Parameter!');
include($typ[3]); // Sicher, dass es 3 heißen muss?
// Denn im Array $de_1 gibt es dieses Element nicht.
// Die Indizes fangen bei 0 an!
}
else
{
exit('Typ-Parameter nicht übergeben.!');
}
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Danke für deine Hilfe mein guter,
ich habe leider noch nicht all zu große Ahnung von php, das ist für mich eher noch Neuland
habe es jetzt so Gelöst das ich die Arrays die ich vor verpackt hatte nun
anstatt
direkt so verpacke:PHP-Code:$d1 = array( 'd1.php', 'd2.php', 'd3.php');
$e1 = array( 'e1.php', 'e2.php', 'e3.php');
$typ = $_POST['typ'];
ist ein Schritt gespart, denn ob ich nun oben vorher was Anlege oder diese hier heraus Definiert wird ist doch Wurst oder gibt es da ein paar Sicherheitsbedenken?PHP-Code:$typ = $_POST['typ'];
if ( $typ == 'd1' ) {$typ = array( 'd1.php', 'd2.php', 'd3.php');}
if ( $typ == 'e1' ) {$typ = array( 'e1.php', 'e2.php', 'e3.php');}
lg
/e: das ist nur ein Musterbeispiel was ich hier zur Veranschaulichung genommen habe, natürlich funktionierte es auch schon zum Test als ich es noch ohne Post einfach übernommen hatte
Geändert von seomaniac (29.12.11 um 23:45 Uhr)
Ähnliche Themen
-
Problem mit Array-Übergabe an Funktion
Von Matty82 im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 07.07.10, 10:38 -
POST-Übergabe des Array $_FILES mit CURL
Von frank burian im Forum PHPAntworten: 9Letzter Beitrag: 20.07.07, 14:47 -
Problem mit SQL Abfrage und übergabe an Smarty als Array
Von Elmo im Forum PHPAntworten: 2Letzter Beitrag: 22.06.07, 12:28 -
Problem mit verschlüsselter Verbindung und Post-Php Scripten
Von cameeel im Forum Hosting & WebserverAntworten: 0Letzter Beitrag: 08.03.07, 22:15 -
Problem mit Array-Übergabe per Formular
Von encom im Forum PHPAntworten: 7Letzter Beitrag: 10.09.04, 10:14





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren