Frage

Ich versuche, nur eine Sache und eine Sache zu tun.

$embedCode = mysql_real_escape_string('<object width="270" height="227"><param name="movie" value="http://www.youtube.com/v/pz-VWi5-tGA?fs=1&amp;hl=en_US&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/pz-VWi5-tGA?fs=1&amp;hl=en_US&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="270" height="227"></embed></object>');

jetzt, wenn ich schreibe ...

echo 'CODE = ' . $embedCode;

ich ...

CODE = 

Nothin ...

Die Gedanken?

EDIT:

Ok, so meine Absicht ist, nicht nur auf $ embedCode zu drucken, es ist in eine Datenbank einzufügen, aber ich bin immer einen Nullwert. Ich dachte, ich ein Klugscheißer sein würde und es ging nach hinten los mit meinem stark vereinfachten Ansatz hier. Wie auch immer, der Punkt ist, wird immer es nicht durch meine mysql query.

EDIT 2: Ich benutze Wordpress $ wpdb Objekt

function insert_video(){

    global $wpdb;
    $wpdb->show_errors();
    $table_name = $wpdb->prefix . "video_manager"; 

    $embedCode = mysql_real_escape_string('<object width="270" height="227"><param name="movie" value="http://www.youtube.com/v/pz-VWi5-tGA?fs=1&amp;hl=en_US&amp;rel=0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/pz-VWi5-tGA?fs=1&amp;hl=en_US&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="270" height="227"></embed></object>');
    $title  = 'this is my title'; 
    $description = 'this is my description';

    $wpdb->insert( $table_name, array( 'title' => mysql_real_escape_string($title), 'embed_code' => $embedCode, 'description' => mysql_real_escape_string($description) ) );

}

function get_video_block($id){
    insert_video();
    global $wpdb;
    $wpdb->show_errors();
    $table_name = $wpdb->prefix . "video_manager";
    $query = "SELECT * FROM " . $table_name . " WHERE `index` = '$id'"; 
    $results = $wpdb->get_results($query, ARRAY_A);


    $results = $results[0];

    $returnString = $results['title'] . '<br>';
    $returnString .= $results['embed_code'] . '<br>';
    $returnString .= $results['description'] . '<br>';

    return $returnString;

}

und immer das Ergebnis:

this is my title<br><br>this is my description<br>
War es hilfreich?

Lösung

Sie drucken Ihre HTML in Ordnung. Rechts klicken und Blick auf die Quelle sollte es da sein.

mysql_real_escape_string nicht html zu entkommen gemeint überhaupt.

Was passiert, wenn man sich die tatsächlichen Daten in der Tabelle aussehen mit phpMyAdmin? Wenn es nicht da dann das Problem, wenn Sie Eingabe, dass die Daten in.

Ok, so dass Sie es entkommen, während es auf den Tisch zu schreiben sind Sie etwas anderes zu sanytise mit, dass Daten ^ Wie strip_tags? Strip_tags würde alles, was html aus.

Ist es möglich, die wpdb_Class säubert, dass html aus?

Ja bei codex.wordpress.org/Function_Reference/wpdb_Class suchen, können Sie nur wpdb- $> query ( 'query') jede Abfrage auszuführen, so legen Sie einfach damit. Wenn es funktioniert, Sie festgelegt sind.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top