kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: Objekt nur aus zweiter Liste löschen

    geschrieben von rangmar

    Bist du ganz sicher, dass das nicht funktioniert?..

    Rein der Logik halber müsste es das nämlich :P
    unset entfernt schliesslich nur die Referenz.
    Wenn es bei dir nicht funktioniert muss wohl $x falsch sein.

    Funktioniert bei mir jedenfalls.
    class test {
    	var $a;
    	public function __construct($a) {
    		$this->a = $a;
    	}
    	public function out() {
    		return $this->a;
    	}
    }
    
    $arr1 = array();
    $arr2 = array();
    $arr3 = array();
    
    $arr1[] = new test(1);
    $arr1[] = new test(2);
    $arr1[] = new test(3);
    $arr1[] = new test(4);
    $arr1[] = new test(5);
    
    $arr2[] =& $arr1[2];
    
    $arr3[] =& $arr1[2];
    
    unset($arr2[2]);
    
    echo $arr1[2]->out();
  • in: Objekt nur aus zweiter Liste löschen

    geschrieben von rangmar

    Du darfst sonst gerne auch ein wenig Code schreiben.
    Dann sehe ich, wie du es machst und kann dir sogar dementsprechend eine tolle Antwort geben. Vorausgesetzt ich verstehe es. :P (Aber davon gehe ich aus)

    *Hust* aber moment mal..

    Du hast am Anfang sagen wir 5 Items.
    Alle die Items kommen in Liste 1.
    Dann kannst du Items von Liste 1 nach Liste 2 verschieben.
    Und von Liste 2 nach Liste 3.
    Sehe ich das richtig?

    Dann mach doch ein Hauptarray in das du alle Items stellst.
    Und in die Listen schreibst du einfach eine Referenz zu den Items.
    Wenn du nun von Liste 1 zu Liste 2 verschiebst, dann entfernst du die Referenz in Liste 1 und fügst sie zu Liste 2 hinzu.
  • in: Objekt nur aus zweiter Liste löschen

    geschrieben von rangmar

    Er meint Referenzen unter den Arrays.

    Soll heissen
    Liste1
    ---------
    Item1
    Item2
    Item3
    
    Liste2
    ---------
    Item3 <-- Soll entfernt werden.
    Item4
    
    Liste3
    ---------
    Item3
    Item5


    Die einfachste Lösung dabei ist doch, dass du in Liste3 eine Referenz auf Item3 von Liste1 erstellst.
    Also die Möglichkeit einer Verbindung zu allen Listen.
    Dann entfernst du in Liste2 einfach die Referenz auf Item3.
  • in: Mehrsprachiges Script

    geschrieben von rangmar

    Da sehe ich aber den Nachteil, dass man bei all den vielen kurzen Strings etwas verwirrt wird.
    Wenn man das ganze so anpasst, dass man etwas in der Art hat:
    ...<?php echo translate('Seid gegrüsst %s', 'Lucas9991'); ?>...

    Da muss man erstens für eine Sprache keine Datei erstellen und man weiss im Code, was wirklich damit gemeint ist.
    Zusätzlich kann man dann auch noch Variablen einbinden.

    Ich empfehle dafür übrigens entweder eine CSV-Datei, XML-Datei oder PHP-Datei(mit Arrays)
  • in: Suche optimale Tabellenstruktur für Wörterbuch

    geschrieben von rangmar


    Nikic sprach vorhin von normalisieren. Würde die Wortverknüpfungstabelle nicht gegen die Normalisierungsregeln (Die ich mir noch genauer anschauen muß) verstoßen, da gleiche IDs in beiden Spalten vorkommen können?

    Wenn ich z.B. nach "Essen" (ID= 3) suche, müßte ich ja beide Spalten abfragen, um alle Verknüfungen zu bekommen.

    Tabelle Wortverbindungen(Wort1Id, Wort2Id)
    - 1, 3  <=
    - 2, 4
    - 3, 5 <=
    - 1, 4


    Das wäre so ja. Allerdings existieret die Tabelle in der Theorie gar nicht, aber da viele Datenbanken die Verknüfung in der Art gar nicht unterstützen, muss eine Zwischentabelle her.


    Wäre jetzt noch eine dritte Sprache im Spiel, müßte ich bei der Abfrage
    Wähle alle Wörter
    - Mit Wortverbindungen zu Meal(Id 1)
    (Das wäre dann 3 und 4)


    um ein "und WortTabelle.SprachID = gewünschte Sprache" ergänzen. Richtig?

    In etwa.
    Etwas genauer ist das dann so: (Erweitert auf Massen von Sprachen und Suche nach mehreren Sprachen)
    NEHME WortId VON Wort WO Worttext = _gesuchtes_wort_
    -NEHME Wort1Id VON Wortverbindungen WO Wort2Id = _gesuchtes_wort_WortId_
    -NEHME Wort2Id VON Wortverbindungen WO Wort1Id = _gesuchtes_wort_WortId_
     -Schleife..
     -WENN SpracheId VON Wort WO WortId = _WortId_aus_verbindungen_
     -GLEICH WIE _gesuchte_SpracheId_
     -ODER GLEICH WIE _gesuchte_SpracheId_2_
      -SCHREIBE Worttext
  • in: Suche optimale Tabellenstruktur für Wörterbuch

    geschrieben von rangmar

    Nehmen wir mal mein Modell.
    Zuerst hast du die Wörter Meal, Flour, Essen, Mehl, 'to eat'.
    Die speicherst du alle am Anfang in der Datenbank, Wobei die Sprachen schon vordefiniert sind.
    (Englisch hat die SprachId 1. Deutsch die 2)
    Tabelle Wort: (WortId, SprachId, Worttext)
    - 1, 1, 'Meal'
    - 2, 1, 'Flour'
    - 3, 2, 'Essen'
    - 4, 2, 'Mehl'
    - 5, 1, 'to eat'

    Die wären nun ohne Verbindungen gespeichert.
    Dann verbindest du die Wörter.
    Tabelle Wortverbindungen(Wort1Id, Wort2Id)
    - 1, 3
    - 2, 4
    - 3, 5
    - 1, 4

    Das wäre dann
    Essen(3) <-> meal(1) <-> Mehl(4) <-> flour (2)
     |_>to eat(5)

    Wenn du nun nach Meal suchst machst du etwa folgendes:
    Wähle alle Wörter
    - Mit Wortverbindungen zu Meal(Id 1)
    (Das wäre dann 3 und 4)
  • in: Tabelle in PDF Dokument über PHP erzeugen

    geschrieben von rangmar

    Hier wäre ein Beispiel in Java.
    http://www.pdflib.com/en/pdflib-cookbook/tables/colorize-cells/

    Wenn wir das mal in PHP umsetzen..
    $Tabelle = -1;
    $row = 1;
    $col = 120;
    $rowheight = 18;
    $fontsize = 12;
    $margin = 3;
    $font = PDF_load_font("Helvetica", "unicode", "");
    $optionenListe  = "fittextline={font=$font fontsize=$fontsize position=center} rowheight=$rowheight margin=$margin colspan=2 colwidth=$col";
    $Tabelle = PDF_add_table_cell($Tabelle, 1, $row, "Tabellentitel", $optionenListe);
    ...

    Usw. usf..

    Eigentlich ist es mir zu doof, das alles umzusetzen entschuldige. :P Den Weg solltest du jedenfalls sehen können.

    Jedenfalls kannst du auf der Seite einige Beispiele finden. Da Pdflib halt viele Sprachen unterstüzt, ist es schwer Beispiele in PHP dafür zu finden.
  • in: auf SESSION anpassen

    geschrieben von rangmar

    Hast du die Session denn gestartet?

    Das machst du am Besten ziemlich am Anfang deiner Php-Dateien mit session_start();

    Ansonsten mach vor if($_SESSION['mail']) mal eine Ausgabe. Dann siehst du ziemlich genau, was in der Session gespeichert ist und was nicht.
    print_r($_SESSION);
    if($_SESSION['mail'])
    ...
  • in: auf SESSION anpassen

    geschrieben von rangmar

    Fast so wie ich es gerade beschrieben hatte.

    Du entfernst in deiner test.php die Eingabe und nimmst $_SESSION anstelle von $_REQUEST.
    $DatabaseHost = "mysql.lima-city.de";
    $DatabaseUser = "USER.........";
    $DatabasePassword = "........";
    $Database = "db_.........._1";
    $TableAktivierung = "Aktivierung";
    $Absender = "............";
    
    if($_SESSION['mail'])
    {
        $DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword);
        mysql_select_db($Database, $DatabasePointer);
    
        $_SESSION['mail'] = mysql_real_escape_string($_SESSION['mail']);
    
        $Erstellt = date("Y-m-d H:i:s");
        $Aktivierungscode = rand(1, 99999999);
    
        mysql_query("INSERT INTO $TableAktivierung (Aktivierungscode, Erstellt, EMail, Aktiviert) VALUES ('$Aktivierungscode', '$Erstellt', '".$_SESSION['mail']."', 'Nein')", $DatabasePointer);
    
        $ID = mysql_insert_id();
    
        mail($_SESSION['mail'], "Aktivierung für Philip-Felder.de", "Hallo,\n\num den Registierungsprozess abzuschließen, klicken Sie auf den folgenden Link:\n\nhttp://www..........de/registrierung-abschliessen.php?ID=$ID&Aktivierungscode=$Aktivierungscode", "FROM: $Absender");
        echo "E-'Mail scheken";
    }
    else
    {
    ?>
       Keine Email-Adresse angegeben
    <?php
    }
    ?>
    
    </body>
    </html>
  • in: auf SESSION anpassen

    geschrieben von rangmar

    Ein Weg wäre, am Anfang die Session zu überprüfen und wenn da eine Email vorhanden ist, diese zu benutzen.

    Also etwa so (Wenn die Email in der Session nicht vorhanden ist, wird die Eingabe benutzt)
    if(isset($_SESSION['mail'])) {
     $email = $_SESSION['mail'];
    } else {
     $email = $_REQUEST['email'];
    }

    Und in deinem Code
    $DatabaseHost = "mysql.lima-city.de";
    $DatabaseUser = "USER......";
    $DatabasePassword = ".....";
    $Database = "db_........_1";
    $TableAktivierung = "Aktivierung";
    $Absender = "...........@.......de";
    
    if($_REQUEST['Send'])
    {
        $DatabasePointer = mysql_connect($DatabaseHost, $DatabaseUser, $DatabasePassword);
        mysql_select_db($Database, $DatabasePointer);
    
       if(isset($_SESSION['mail'])) {
           $email = $_SESSION['mail'];
       } else {
           $email = $_REQUEST['Email'];
       }
    
        $email = mysql_real_escape_string($email);
    
        $Erstellt = date("Y-m-d H:i:s");
        $Aktivierungscode = rand(1, 99999999);
    
        mysql_query("INSERT INTO $TableAktivierung (Aktivierungscode, Erstellt, EMail, Aktiviert) VALUES ('$Aktivierungscode', '$Erstellt', '".$email."', 'Nein')", $DatabasePointer);
    
        $ID = mysql_insert_id();
    
        mail($email, "Aktivierung für Philip-Felder.de", "Hallo,\n\num den Registierungsprozess abzuschließen, klicken Sie auf den folgenden Link:\n\nhttp://www...............de/registrierung-abschliessen.php?ID=$ID&Aktivierungscode=$Aktivierungscode", "FROM: $Absender");
        echo "E-'Mail scheken";
    }
    else
    {
    ?>
    <form action="<?php echo$_SERVER['PHP_SELF']; ?>" method="post">
    <input type="text" name="email">
    <input type="submit" value="Senden">
    </form>
    
    <?php
    }
    ?>
    
    </body>
    </html>
  • in: Suche optimale Tabellenstruktur für Wörterbuch

    geschrieben von rangmar

    Eine m:n Relation zu der selben Tabelle(..) finde ich hier eigentlich sinnvoller, damit man Redundanzen bei den Bedeutungen verhindern kann.

    Also eher etwa:

    Sprachen: SprachId, ...
    Wörter: WortId. SprachId, Worttext, ...
    Wortverbindungen: Wort1Id, Wort2Id

    Man kann dann zwar auch Wörter sich selbst zuweisen, aber so hätte ich das realisiert.
  • in: Anker im Suchergebnis

    geschrieben von rangmar

    Hmm ja gut, stimmt eigentlich.
    Mir fällt dann eigentlich nur noch die Möglichkeit mit der header-Modifizierung ein.

    Also in der Art
    <?php
    if($_POST['artnr']) {
     header('Location: shop.php?wg=1&action=searchartnr#' . $_POST['artnr']);
    }
    ?>
  • in: Anker im Suchergebnis

    geschrieben von rangmar

    Am Besten schreibst du bei deiner 'shop.php' eine Javascript-Funktion in den Head-Bereich und ergänzt die Artikelnummer per PHP.
    Dann lädst du die Funktion einfach zum Seitenstart

    <head>
    <script type="text/javascript">
    function jump() {
     window.location = "#<?php echo $_POST['artikelnummer']; ?>";
    }
    </script>
    </head>
    <body onload="jump()">
    </body>

Login zum Webhosting ohne Werbung!