2016-07-31 7 views
0

Ich habe jetzt ein Problem mit diesem Problem zu lösen. Ich möchte mit Cron (jede Mitternacht) laufen, die den angegebenen Inhalt in meiner MySQL-Tabelle (ich spreche über die Wordpress-Datenbank) mit nur einem Leerzeichen ersetzen würde. Ich möchte danach mit Cron-Skript laufen, das zu jedem Post angegebenen Text hinzufügen wird. Aber wenn ich es mit PHP versuche, gibt es ein Problem mit eingefügtem Code, der wirklich lang ist, und mysql sagt mir, dass der String falsch ist.Wie Inhalt von MySQL-Tabelle durch Cron ersetzen?

Dieser Code ist:

<script type="text/javascript" async="true" data-ad-type="iframe v2.0" charset="utf-8" src="//cz.search.etargetnet.com/generic/uni.php?g=ref:47349,background_color:ffffff,background_image:clasic,background_opacity:95,border_color:ffffff,border_style:none,design_name:yellow,font:verdana,fsi:10,h_text_color:000000,h_title_color:948000,h_title_underline:0,h_url_color:948000,h_url_underline:0,hover_back:transparent,logo:1,logo_type:5,area:468x60,show_in_fb:1,show_in_fb_text:na google play CZ Vtipy,tabl:4,text_color:000000,title_color:948000,title_underline:0,url_color:948000,url_underline:0"></script> 

Können Sie mir bitte helfen?

EDIT: Dies ist PHP-Code im laufen versuchen, aber mit Fehlern

<?php 

if (!$link = mysql_connect('localhost', 'user', 'pass')) { 
    echo 'Could not connect to mysql'; 
    exit; 
} 

if (!mysql_select_db('databasename', $link)) { 
    echo 'Could not select database'; 
    exit; 
} 

$sql = 'UPDATE wp_posts SET post_content = REPLACE (post_content,'<script type="text/javascript" async="true" data-ad-type="iframe v2.0" charset="utf-8" src="//cz.search.etargetnet.com/generic/uni.php?g=ref:47349,background_color:ffffff,background_image:clasic,background_opacity:95,border_color:ffffff,border_style:none,design_name:yellow,font:verdana,fsi:10,h_text_color:000000,h_title_color:948000,h_title_underline:0,h_url_color:948000,h_url_underline:0,hover_back:transparent,logo:1,logo_type:5,area:468x60,show_in_fb:1,show_in_fb_text:na google play CZ Vtipy,tabl:4,text_color:000000,title_color:948000,title_underline:0,url_color:948000,url_underline:0"></script>',' ')'; 
$result = mysql_query($sql, $link); 

if (!$result) { 
    echo "DB Error, could not query the database\n"; 
    echo 'MySQL Error: ' . mysql_error(); 
    exit; 
} 

while ($row = mysql_fetch_assoc($result)) { 
    echo $row['foo']; 
} 

mysql_free_result($result); 

?> 

EDIT2:

Wenn im Versuch, PHP-Skript zu starten, zeigt es:

PHP Parse error: syntax error, unexpected 'type' (T_STRING) in /home/xxxxx/xx/xxx/xxxx/xxxx_mysql.php on line 13 
+1

So erhalten Sie Fehler von PHP-Skript Sie verwenden? Fügen Sie dieses PHP-Skript Ihrem Beitrag hinzu. –

+0

Sie sollten Ihre Db-Schema zur Verfügung stellen, den genauen Fehler von MySQL, die Länge des Codes ........ – frz3993

+0

Danke, ich es vergessen. Hauptpost wurde bearbeitet :-) –

Antwort

1

Problem ist mit Anführungszeichen.
Sie sollten einfache Anführungszeichen aus der Abfrage entfernen.

Und Sie können versuchen, diese auch

$link = mysqli_connect('localhost', 'user', 'pass','db') or die("Connection error"); 

$data = <<<EOT 
<script type="text/javascript" async="true" data-ad-type="iframe v2.0" charset="utf-8" src="//cz.search.etargetnet.com/generic/uni.php?g=ref:47349,background_color:ffffff,background_image:clasic,background_opacity:95,border_color:ffffff,border_style:none,design_name:yellow,font:verdana,fsi:10,h_text_color:000000,h_title_color:948000,h_title_underline:0,h_url_color:948000,h_url_underline:0,hover_back:transparent,logo:1,logo_type:5,area:468x60,show_in_fb:1,show_in_fb_text:na google play CZ Vtipy,tabl:4,text_color:000000,title_color:948000,title_underline:0,url_color:948000,url_underline:0"></script> 
EOT; 

$sql = "UPDATE wp_posts SET post_content = REPLACE (post_content,".$data.",' ')"; 
$result = mysqli_query($link, $sql);