2016-07-09 9 views
1

Ich möchte eine Zeichenfolge in jquery concat, aber wenn ich die Zeichenfolge posten sehe ich nur einen Teil der mystringg.php Dosent echo der richtige Wert einer Eingabe

Mein html ist:

<input type="text" style="display:none" name="mystring" id="mystring" value=""/> 

Ich habe einige Variablen:

var ti="ti"; 
var low="low"; 
var moderate="moderate"; 
var high="high"; 
var title="title"; 

Und ich versuche, eine Zeichenfolge zu verketten wie:

var mystringg=""; 
mystringg+= "<\n"+ti+">"; 
mystringg+= "\n<LOW> "+low+" </LOW> "; 
mystringg+= "\n<MODERATE> "+moderate+" </MODERATE> "; 
mystringg+= "\n<HIGH> "+high+" </HIGH> "; 
mystringg+="\n</"+title+">"; 

alert(mystringg); // here print the right value of the string 
$('#mystring').val(mystringg); 

in PHP:

$string = $_POST['mystring']; 
echo $string; 

Wenn ich mystringg alarmiere, bekomme ich die richtige Zeichenfolge. Aber wenn ich es in einer anderen PHP-Seite poste, bekomme ich nur einen Teil des Wertes, tatsächlich bekomme ich nur den Wert der Variablen, nicht die manuellen Werte.

+0

Was ist der Typ Ihrer Eingabe? –

Antwort

1

Sie erhalten die vollen Werte. Der Grund, warum Sie das nicht glauben, ist, dass Sie sie in Tags eingepackt haben, jedoch keine Standard-HTML-Tags.

Wenn Sie var_dump($_POST['mystring']);, werden Sie sehen:

string '<ti><LOW> low </LOW> <MODERATE> moderate </MODERATE> <HIGH> high </HIGH> </title>'

also der volle Wert ist.

Aber - wenn Sie die echo davon (wie Ihr Code der Fall ist) zu sehen, die Tags werden als HTML-Tags gemacht (und somit nicht zeigen nach oben), so dass es wie folgt aussieht:

low moderate high

ABER, sehen Sie, wenn Sie Quelle zu sehen, dass es ist alles da in der Tat:

<ti><LOW> low </LOW> 
<MODERATE> moderate </MODERATE> 
<HIGH> high </HIGH> 
</title> 

wenn Sie die „Tags“ sehen möchten, wenn Sie sie echo, echo dann htmlspecialchars wie so mit:

echo htmlspecialchars($_POST['mystring']); 
+0

Wenn ich dies tue bekomme ich eine Nachrichten-String (260) "...." 0. Ich habe die Tags entfernt und in der Tat sind die Tags das Problem. Gibt es außer der var_dumb noch eine andere Lösung, die nicht funktioniert? – JORd

+0

Ich fand dies: [link] http://stackoverflow.com/questions/6817262/how-to-display-html-tags-asplain-text und das gerenderte ist fertig. Vielen Dank für Ihre Zeit – JORd