Zum Inhalt springen

computercrustie

Mitglieder
  • Gesamte Inhalte

    207
  • Benutzer seit

  • Letzter Besuch

Beiträge von computercrustie

  1. Oder so:


    $lines = 10;

    $page = isset($_REQUEST['page']) ? $_REQUEST['page'] : 0;

    $sql = "SELECT CEIL( COUNT(*) / $lines ), COUNT(*) FROM guestbook";

    if (!($res = mysql_query($sql)))
    return false;

    list($pages,$entrees)=mysql_fetch_row($res);
    mysql_free_result($res);

    $sql = "SELECT name, mail, text, DATEFORMAT('%d.%m.%y',date) FROM guestbook ORDER BY date DESC LIMIT ".($page*$lines).", $lines";

    if (!($res = mysql_query($sql)))
    return false;

    while( list($name,$mail,$text,$date) = mysql_fetch_row($res))
    echo ($mail?"<a href=\"mailto:$mail\">":"").$name.($mail?"</a>":"")."schrieb am $date:<br/>\n".htmlentities($text);
    mysql_free_result($res);

    for($a=0;$a<$pages;$a++)
    echo ($a!=$page?"<a href='guestbook.php?page=$a'>[".($a+1)."]</a>":"(".($a+1).")");
    [/PHP]

    Der Unterschied zum obigen Beispiel ist der, dass hier nur genau die Datensätze ausgelesen werden, die auch benötigt werden.

  2. Es gibt verschiedene Stringfunktionen in MySql, eine davon (die deinen Vorstellungen am ehesten entspricht) ist:

    REPLACE(str, match, replace)

    Wobei "str" der Text ist, in dem die Vorkommen von "match" durch "replace" ersetzt werden sollen.

    Bsp:

    Tabelle "table" hat das Feld "text" mit dem Wert: "nutzen Sie MySql in Verbindung mit PHP !"

    dann ergibt die Abfrage:

    
    SELECT REPLACE(`text`,'PHP','<i>PHP</i>') FROM `table`
    
    
    "nutzen Sie MySql in Verbindung mit <i>PHP</i> !" Sollen mehrere Strings ersetzt werden, dann müssen die REPLACE-Anweisungen verschachtelt werden:
    
    SELECT REPLACE( 
    
       REPLACE(
    
          `text`, 
    
          'PHP', 
    
          '<i>PHP</i>'
    
       ),
    
       'MySql',
    
       '<b>MySql</b>'
    
    )
    
    

    Stellt sich nur die Frage, ob das wie bereits erwähnt nicht besser nach dem Abfragen gelöst werden kann:


    $text = "nutzen Sie MySql in Verbindung mit PHP !";

    $search = array (
    'PHP',
    'MySql'
    );
    $replace = array (
    '<i>PHP</i>',
    '<b>MySql</b>'
    );

    echo str_replace($search,$replace,$text);
    [/PHP]

    Oder bei Formatierungen wie in diesem Forum mit RegEx:

    [PHP]
    $text = "nutzen Sie [b]MySql[/b] in Verbindung mit [i]PHP[/i] !";

    $search = array (
    '/\[b\](.*?)\[\/b\]/is',
    '/\[i\](.*?)\[\/i\]/is'
    );
    $replace = array (
    '<i>$1</i>',
    '<b>$1</b>'
    );

    echo preg_replace($search,$replace,$text);

  3. Hi,

    ich würde mich freuen, wenn ihr mir sagen könntet wie sich Konstruktoren und Destruktoren bei Mehrfachvererbung verhalten.

    Vielleicht könnt ihr mir überhaupt ein wenig über Mehrfachvererbung erzählen.

    Ich würde mich echt freuen.

    Vielen Dank schonmal.

    Ich kann mir denken, warauf du hinaus willst, da ich selbst mal vor diesem Problem stand.

    Bei Mehrfachvererbung wird ohne explizite Angabe in der Konstruktion immer die Elternklasse zuerst erzeugt, die in der Vererbungsdeklaration zuerst steht, bei der Destruktion genau umgekehrt:

    
    #include <iostream>
    
    
    class CVater
    
    {
    
      public:
    
    	CVater(void) {std::cout<<"Vater"<<std::endl;}
    
    	~CVater(void) {std::cout<<"Vater tot"<<std::endl;}
    
    };
    
    
    class CMutter
    
    { 
    
      public:
    
    	CMutter(void) {std::cout<<"Mutter"<<std::endl;}
    
    	~CMutter(void) {std::cout<<"Mutter tot"<<std::endl;}
    
    };
    
    
    class CKind: public CVater, CMutter 
    
    {
    
    };
    
    
    
    void main(void)
    
    {
    
    	CKind Kind;
    
    }
    
    

    Ausgabe:

    Vater

    Mutter

    Mutter tot

    Vater tot

  4. Folgendes Problem:

    Ich benötige die Absenderadresse (Emailadresse) einer ausgewählten Email in Outlook 2000. Dazu nutze ich folgenden Code:

    
        Dim active_explorer As Outlook.explorer
    
        Dim active_folder As Outlook.MAPIFolder
    
        Dim mail_item As MailItem
    
    
        Set active_explorer = Application.ActiveExplorer
    
        Set active_folder = active_explorer.CurrentFolder
    
    
        If active_folder.DefaultItemType = olMailItem Then
    
    
            For Each mail_item In active_explorer.Selection
    
                ...
    
            Next mail_item
    
    
        End If
    
    

    Dieser funktioniert auch, d.h. er iteriert durch die selektierten Emails und liefert jede einzelne als mailitem-Objekt.

    Nun benötige ich aber von diesem Mailitem-Objekt die Absenderadresse. Leider habe ich bisher noch keine Möglichkeit gefunden, diese zu ermitteln. Es gibt zwar die Möglichkeit, den Namen des Absenders zu ermitteln, allerdings bringt mich das nur dann weiter, wenn dieser in den Kontakten vorhanden ist. Auch über die ReplyRecipient-Eigenschaft funktioniert es nicht in jedem Fall.

    Weiss jemand weiter ?

    Vielen Dank im Voraus.

  5. Also erst einmal Entschuldigung, dass ich mich so lang nicht gemeldet habe.

    Den Source-Code kann ich dir hier nicht zeigen, da er zum einem riesig groß ist und zum anderen nicht gezeigt werden darf.

    Das Problem habe ich auch schon selbst gelöst, ich habe mir eine eigene Streamklasse geschrieben, in die ich die Daten so wie sie kommen binär schreibe bzw. lese.

    Trotzdem danke!

  6. Original geschrieben von FinalFantasy

    Ist aber auch irgendwie ein Schmarrn mit dem 0-127, weil wieso sollte dann der ASCII-Standard 8bit/Zeichen vorsehen?

    Da könnt ich ja gleich sagen, ich les die Datei 19bit weise aus, und was ist es dann? ASCII oder binär?

    Les ich nämlich ne Datei dann nur 7bit weise aus, ist deiner Definition nach alles ASCII.

    Nach dem was ich gelernt habe, geht der ASCII-Standard sehr wohl von 0-255 Zeichen, wobei 128-255 für sonstige Zwecke reserviert sind, z.B. Codepages. AFAIK stehen in diesem Bereich auch die deutschen Umlaute, wenn man die richtige Codepage auswählt.

    Das nennt sich dann aber ANSI-ASCII und ist, wie du richtig bemerkt hast, eine Länderspezifische Erweiterung.

    Zum eigentlichen Thema: man könnte prüfen, ob sich etwaige Sonderzeichen (nicht Steuerzeichen wie Tab, CR, LF etc.) in der Datei befinden und anhand dieser dann festlegen, ob es eine lesbare Datei ist oder nicht (aber das tun die angesprochenen Makros hier sicherlich)

  7. Also wir hatten in der engeren Auswahl für einen Jungen

    Niklas

    Jonas

    Benjamin

    für ein Mädchen

    Sarah

    Lea

    Sind alle sehr kurz, allerdings wohl nicht nordisch (glaub' ich zumindest)

    Sie sind auch in letzter Zeit nicht gerade selten, aber leicht zu merken und

    werden vor allem gesprochen wie geschrieben.

  8. Folgendes Problem:

    Ich habe mehrere Klassen, die die gleiche Basisklasse haben.

    In dieser Basisklasse gibt es zwei virtuelle Methoden, an die ein Stream übergeben wird, der zur Ausgabe bzw. Eingabe der Membervariablenwerte genutzt wird.

    Ich hatte das über std::ofstream bzw. std::ifstream probiert. Das Schreiben klappt auch ganz gut, dass Problem hierbei ist nur, dass beim Schreiben von Longwerten diese als Char abgelegt werden. D.h., ich bekomme anstatt vier Byte nur eines, wenn der Wert kleiner 10 ist.

    Nun meine Frage: gibt es andere StandardStreams oder Manipulatoren / Methoden des o.g., mit dem ich die Daten binär ablegen kann ?

    Am besten natürlich über einen Operator (<< / >>), der über template<> den Typ erkennt und den Wert dann auch entsprechend in der richtigen (binären) Länge schreibt.

    Danke schonmal im Vorraus.

  9. Das klingt fast so, als ob das cgi-bin Verzeichnis gegen "Welt"-Zugriffe geschützt ist. Eine Möglichkeit wäre, das Verzeichnis für alle zum Lesen freizugeben (was aber unter Umständen auch dazu führen kann, dass andere deine Scripte lesen können) oder die Bilder in ein anderes, von aussen lesbares Verzeichnis, auszulagern.

    Mit dem Windows Commander kannst du über [Dateien]->[Dateiattribute ändern] die Zugriffseinstellung ändern. Markiere hier für das betreffende Verzeichnis bei [Welt] das Häkchen "Lesen". Aber wie gesagt, danach können andere auch deine Scripte lesen, nicht nur ausführen.

  10. Original geschrieben von Darth_Zeus

    Schenkt ihm bitte einfach keine Aufmerksamkeit.

    Wenn er sich mit Admins und Mods, wie übrigens in der Vergangenheit schon geschehen, offensichtlich anlegen will, werden wir uns darum kümmern.

    Da der Beitrag wie immer keinen Bezug zum eigentlichen Thema hat, ignorieren.

    DAS war eigentlich nicht meine Intension. Hätte ich je die Absicht gehabt, mich mit euch anzulegen, würde ich hier keine fachlichen Themen posten.

    Bin nur immer noch etwas angesäuert wegen genau dem angesprochenen "wie in der Vergangenheit geschehen".

    Aber wie du schon richtig bemerkt hast, hat es nichts mit dem Thema zu tun.

    Und das :floet: sollte wirklich darauf hin weisen, dass es nicht so ernst gewesen ist, wie ihr's wieder mal aufgefasst habt.

    Deshalb auch jetzt gleich die Bitte: alle folgenden Antworten (hierauf) per PN, damit wir mit diesem Problem diesmal nicht den Thread vollmüllen. (Ja, auch ich nehme mir Kritik an)

  11. Original geschrieben von Fuldaer_Bub

    Also ob man mit Daniel K. sympathisiert oder nicht, bleibt jedem selbst überlassen.

    Aber die Tatsache ist die, das er mit seinem groben fahrlässigen Verhalten - nichts anderes ist das wen man ohne Führerschein fährt und obendrein noch zwei Personen mitnimmt - sich selbst und andere gefährdet hat.

    Hoffe nur, das es das Gericht nicht mit einer Strafe wie Sozialstunden abdingt. Führerscheinsperre für 2 Jahre gibt das doch auch oder?

    Nicht nur das, man kann ihn dafür sogar 1 Jahr lang hinter schwedische Gardinen bringen.

  12. Auch wenn's etwas unter die Gürtellinie geht: mit etwas Glück bekommt er das Jahr Freiheitsentzug (was ich in diesem Fall für mehr als verdient halte) und der noch nicht hörgeschädigte Teil unserer Bevölkerung muss dieses Gejohle und die anbei fallenden geistlosen Kommentare ein Jahr lang nicht erdulden.

    :floet:

  13. Hast du denn die Möglichkeit, eine serverseitige Scriptsprache (PHP, PERL, PYTHON etc) einzusetzen ?

    Dann hättest du zwei Möglichkeiten:

    die erste (und genauere):

    Du setzt bei dem User einen Cookie und prüfst dann beim Aufruf der Seite, ob dieses Cookie bereits gesetzt ist. Wenn nicht, erhöhst du deinen Zähler und setzt das Cookie.

    die zweite (relativ ungenau):

    Du speicherst dir die IP des Users, prüfst bei einem Seitenaufruf, ob diese IP bereits vorhanden ist. Wenn nicht, Zähler erhöhen und IP speichern.

    Diese Variante ist deshalb ungenau, weil die wenigsten User eine feste IP Adresse haben.

    Wenn du keine solche serverseitige Scriptsprache einsetzen kannst, bliebe allerdings immer noch die Möglichkeit, via JavaScript den Cookie zu prüfen bzw. zu setzen. Ist dieses Cookie dann noch nicht gesetzt, könntest du den Link zum Webalizer aufrufen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...