Beiträge von diltigug

    Also, ich sprech´ jetzt mal als Hobby-Coder der nur "ehrenamtlich" für Freunde und Verein mit webdesign beschäftigt.
    Mich nerven die Browserinkompatibilitäten total, sie rauben mir (Frei-)Zeit und vermiesen mir oft den Spaß an der ganzen Sache.
    So fände ich eine Aktion, die MS mal wieder zeigt, wie unzufrieden ihre Kunden mit dem IE sind, zum Einen und als Aufklärungsaktion für "unbedarfte" User zum anderen nicht Schlecht.
    Und dafür wäre so ein Plugin eine nette Sache damit auch die "unbedarfteren" Blogger sich beteiligen könnten.

    Aber, wenn, dann würde ich das nur als eine organisierte, zeitbegrenzte Aktion sehen. Und da würde ich dann auch mitmachen.

    Ansonsten kann ich Monikas Argumente nachvollziehen.

    Zitat

    weil 80% meiner User heillos überfordert sind einen anderen Browser auch nur zu installieren.

    weil sie nämlich zwischen 11:00 und 16:00 auf meiner Webseite sind, -da ich nicht annehme, dass die alle Hausfrauen oder Arbeitssuchend sind, gehe ich davon aus, dass sie aus Firmennetzwerken kommen und kein Angestellter hat bei der Auswahl des Betriebssystems auch nur irgendwas mitzureden, noch darf er was in so ein Netzwerk installieren....

    gruß
    diltigug


    Warum wird eigentlich für den Beitrag/Seite keine eigenes Template gebaut, das im PHP code die POST Bearbeitung der per Editor eingeklebten <Form> macht ? Wäre doch um einiges leichter und braucht kein Plugin.

    O.K. als Hobby-WPler und Gelegenheits- und Freizeitcoder darf ich doch vielleicht nicht auf so eine Idee kommen, oder? :???:

    Kann ich nur zur Zeit nicht antesten, weil mein FTP-Zugang zur Zeit wegen ´ner Serverumstellung nicht mehr funkt. Unser Admin ist erst morgen wieder greifbar.


    Was is denn das nu wieder? :shock: Was steht in Zeile 30 des eval'd Code? Also wahrscheinlich die 30. Zeile des Codes im Editorfenster. Sollte es doch mit Exec-PHP zusammenhängen, dass es anders nicht funktioniert?


    Das war wohl my mistake, ich hatte die Schleife zur Ausgabe des Arrays nicht auskommentiert.

    diltigug: Das 2., aber mit Anführungszeichen:

    Code
    $ergebnis = $my_wpdb->get_results([COLOR=Red][B]"[/B][/COLOR]SHOW TABLES[COLOR=Red][B]"[/B][/COLOR]);

    Aha, endlich passiert mal was neues :):

    Zitat

    WordPress database error: []
    SET NAMES 'utf8'

    array(9) { [0]=> object(stdClass)#147 (1) { ["Tables_in_intranet02"]=> string(7) "bereich" } [1]=> object(stdClass)#148 (1) { ["Tables_in_intranet02"]=> string(7) "gewerke" } [2]=> object(stdClass)#149 (1) { ["Tables_in_intranet02"]=> string(11) "mitarbeiter" } [3]=> object(stdClass)#175 (1) { ["Tables_in_intranet02"]=> string(8) "projekte" } [4]=> object(stdClass)#176 (1) { ["Tables_in_intranet02"]=> string(8) "prospekt" } [5]=> object(stdClass)#177 (1) { ["Tables_in_intranet02"]=> string(11) "urteilarten" } [6]=> object(stdClass)#178 (1) { ["Tables_in_intranet02"]=> string(7) "urteile" } [7]=> object(stdClass)#179 (1) { ["Tables_in_intranet02"]=> string(12) "vergabearten" } [8]=> object(stdClass)#180 (1) { ["Tables_in_intranet02"]=> string(8) "vergaben" } }
    Catchable fatal error: Object of class stdClass could not be converted to string in /srv/www/wordpress/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()'d code on line 30

    Kannst du mal irgendwas "einfaches" ausprobieren?
    "SHOW TABLES" oder sowas?

    Vielleicht auch mal direkt als 1. Parameter von get_results(), statt vorheriger query()?


    :oops: So?

    PHP
    $my_wpdb->query($my_wpdb->prepare("SHOW TABLES"));

    und/oder so?

    PHP
    $ergebnis = $my_wpdb->get_results(SHOW TABLES);

    erstes bringt

    und zweites einen syntax-error.

    Sorry, ich hab´s einfach noch nicht so drauf mit der richtigen Syntax-Formulierung, brauch da immer ein paar Anläufe.:-?

    So langsam bekomme ich Muffensausen, das es irgendein blöder Syntxfehler ist, obwohl ich alles schon ich weiß nicht wie oft kontrolliert habe.:neutral:

    Guten Morgen,
    mmh... irgendwie ist mein letzter Tread verloren gegangen, also nochmal:

    Da du aber mit dem Theme-Editor ?

    Ich arbeiten an dem Skript derzeit im Beitragseditor von WP im html-Bereich (nicht im Visuell-Bereich). Hier habe ich eine statische Seite angelegt auf der die externen Daten ausgegeben werden sollen.
    Das "Ursprungsskript" ist mit Phase5 erstellt und Teile davon mit copy+paste in WP eingefügt worden.
    Aber irgendwie glaub ich nicht, das es daran liegt, denn ich habe bereits ein Skript, was anstandslos funktioniert (noch ohne wpdb-Klasse), das ich auf die gleiche Weise erstellt habe.
    Auch ein direkter Vergleich dieser Skripte hat mich nicht weitergebracht. Die einzigen Unterschiede im SQL-String bestehen darin, das ich nicht alles auslese (sprich "*" nicht verwende, sondern Felder definert habe) und keine where-Klausel benutze.
    Sehr verwirrend finde ich.

    d.

    Wenn deine DB auf UTF-8 läuft und du die Datei mit diesem Text 'Büro' direkt gefüttert hast, hast du sie auch als UTF-8 ohne BOM Marker im TextEditor gespeichert ? Wenn nicht, ist es eine ANSI Datei mit korruptem Zeichen in einer Anfrage für UTF-8.

    Sowohl die Tabellen der WP-DB als auch die der mit den mitarbeiter-Daten stehen laut phpmyadmin auf latin1_general_ci nur das Feld ort hatte ich im Laufe unserer Versuchsreihe auf utf8_unicode_ci umgestellt.

    Was ist ein BOM Marker? Das musst Du mir nochmal erläutern.
    Das Skript bearbeite ich derzeit im Editor in WP im html-Fenster, ansonsten arbeite ich mit Phase5.

    bin gerade noch auf die glorreiche Idee gekommen, es mal ohne die where-Klausel zu probieren (hätte ich auch früher drauf kommen können).
    Allerdings ohne Erfolg, nach wie vor:

    Zitat


    WordPress database error: []
    SELECT * FROM mitarbeiter ORDER BY lastname ASC, firstname ASC

    NULL

    Aber immerhin scheinen dann die Umlaute kein Problem zu sein.

    Update:
    Auch noch probiert statt * nur ein Feld auszulesen, ohne Erfolg:

    Zitat


    WordPress database error: []
    SELECT lastname FROM mitarbeiter WHERE ort = 'Büro' ORDER BY lastname ASC, firstname ASC

    NULL

    Ach ja, sagtest du ja schon, nix mehr mit mysql_*

    o.k. jetzt kommt das:

    PHP
    WordPress database error: []
    SELECT * FROM mitarbeiter WHERE ort = 'Büro' ORDER BY lastname ASC, firstname ASC


    Sieht doch gar nicht so schlecht aus, oder?


    P.S. gibt es eigentlich irgendwann einen Preis für den längsten Tread des Forums? :-D

    so?

    PHP
    $my_wpdb->query($my_wpdb->prepare("SELECT * FROM mitarbeiter WHERE ort = %s ORDER BY lastname ASC, firstname ASC", $ortvalue));
    echo mysql_error();
    $ergebnis = $my_wpdb->get_results(null, ARRAY_N);
    var_dump($ergebnis);

    Da kommen keine weiteren Meldungen:

    Zitat


    NULL

    Warning: Invalid argument supplied for foreach() in /srv/www/wordpress/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 27

    so, jetzt hab´ich´s soweit und stehe, glaub ich, wieder am Anfang:
    Folgende Meldung wird ausgegeben:

    Zitat


    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/www/wordpress/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 25

    Das hatte ich irgendwann schon mal. Müsste sich eigentlich auf die folgende Zeile beziehen:

    Zitat

    while($ergebnis=mysql_fetch_array($ergebnis))

    So schaut der Code jetzt aus:

    Dann noch gleich die Frage, wie schliesse ich die DB-Verbindung wieder?

    PHP
    <?php
    $pass="xxx";  //Datenbankpasswort
    $data="xxx";  //Datenbank
    $user="xxx";  //Datenbanknutzer
    $tabelle="mitarbeiter";

    Bis hierher okay.

    PHP
    $link=mysql_connect("localhost", $user, $pass, true);
    mysql_select_db($data, $link);

    So, hier legst du jetzt eine neue Datenbank-Verbindung mit Hilfe der WPDB-Klasse an.


    Hier geht´s leider schon wieder los, wie genau mach ich das? Ich habe mich mit meine Englischkenntnissen versucht was in der Doku zu finden, leider ohne Erfolg. Darum einfach mal ins Blaue geraten:

    PHP
    $pass="xxx";
    $data="xxx";
    $user="xxx";
    $tabelle="mitarbeiter";
    $wpdb->selectdb($data, $wpdb->connect("localhost", $user, $pass, true));

    Funktionert natürlich nicht:

    Zitat


    Fatal error: Call to a member function selectdb() on a non-object in /srv/www/wordpress/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()'d code on line 17

    ich vermute, weil selectdb und connect keine Objekte der Klasse sind? Ist das so richtig formuliert?

    Besser wäre es allerdings, wenn du die bestehende Datenbank-verbindung nutzen könntest, d.h. die Mitarbeiter-Tabelle würde in der selben Datenbank liegen wie die wp_*-Tabellen. Dann sparst du dir eine weitere Datenbank-Verbindung, das spart Resourcen und schließt mögliche Fehlerquellen aus.


    Ist in diesem Fall leider nicht möglich.

    PHP
    /*Hier der Code von marX*/
    $ort_value = 'büro';
    $wpdb->query(
       $wpdbprepare("
           SELECT * FROM mitarbeiter
           WHERE ort = %s
           ORDER BY lastname ASC, firstname ASC",
           $ort_value));
    /*marX-Code ende, und dann... ? */

    ...

    Alle Klarheiten beseitigt?

    Wie man siehtst, leider nein. In dem Code oben, muss das $wpdbprepare oder $wpdb->prepare heissen. Ist im Zitat und Original unterschiedlich.

    Gruss,
    diltigug, oder die Hoffnung stirbt zuletzt.:?