tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
785
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    fileshareking fileshareking ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Beiträge
    48
    Hallo Ihr Lieben ,

    habe folgendes kleines Problem, welches ich dirngend gelöst haben muss, da man dies von mir erwartet
    Ich hoffe ihr könnt mir bei dieser Aufgabe helfen.

    Ich möchte bei Joomla den Produktnamen (jos_vm_product_name) um den vorangestellten Herstellernamen mit "str_ireplace" kürzen, wobei ich den Herstellernamen mit INNER JOIN aus einer anderen tabelle(jos_vm_manufacturer) beziehe.

    Folgendes Script habe ich mithilfe des Dreamweavers zusammenbasteln können.


    PHP-Code:
    mysql_select_db($database_RTK$RTK);
    $query_Recordset2 "SELECT jos_vm_product.product_id,product_parent_id,product_name,produktname,jos_vm_product_mf_xref.manufacturer_id,jos_vm_manufacturer.mf_name FROM jos_vm_product INNER JOIN jos_vm_product_mf_xref ON jos_vm_product_mf_xref.product_id = jos_vm_product.product_id INNER JOIN jos_vm_manufacturer ON jos_vm_manufacturer.manufacturer_id = jos_vm_product_mf_xref.manufacturer_id ORDER BY jos_vm_product.product_id ASC ";
    $Recordset2 mysql_query($query_Recordset2$RTK) or die(mysql_error());
    $row_Recordset2 mysql_fetch_assoc($Recordset2);
    $totalRows_Recordset2 mysql_num_rows($Recordset2); 
    am Ende des Script kann ich den Gewünschten Namen mit folgendem Script in eine Variable($produktname) schreiben.

    PHP-Code:
      do {   

    $product_name $row_Recordset2['product_name'];
    $mf_name $row_Recordset2['mf_name'];
    //$produktname= $row_Recordset2['produktname'];
    $produktname =  str_ireplace($mf_name,'',$product_name);


    } while (
    $row_Recordset2 mysql_fetch_assoc($Recordset2)  ) 

    wie kann ich nun das ergebnis aus $produktname in eine neue spalte produktname schreiben (aktualisieren), wobei die Spalte product_id zur eindeutigen Identifizierung dient?


    Also soll zum Beispiel der Wert "Burmester BM-25" aus spalte product_name mit der product_id = 25 in die Spalte produktname mit dem Wert "BM-25" geschrieben werden

    Das ganze soll natürlich in einer Schleife stattfinden wobei eben die product_id varriert


    Ich hoffe mIhr habt mein Problem verstanden und könnt mir dabei helfen.

    Gruß FSK
    Geändert von fileshareking (11.01.09 um 14:02 Uhr)
     

  2. #2
    KingNothing KingNothing ist offline Mitglied Silber
    Registriert seit
    Jan 2009
    Beiträge
    54
    Wo bekommst Du die ProduktID her?
    Wo willst Du es hinschreiben, bzw aktualisieren?
    In die gleiche Tabelle? In eine neue Tabelle? In eine Datei? Auf den Bildschirm?
     

  3. #3
    fileshareking fileshareking ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Beiträge
    48
    Zunächst einmal danke für die antwort.

    product_id bekomme ich aus der gleichen tabelle wie product_name . aktualisiert werden soll die spalte 'produktname' mit derselben product_id.

    product_name => *abändern und in Variable $produktname schreiben* => Wert aus Variable $produktname in der spalte 'produktname' speichern(aktualisieren).
     

  4. #4
    KingNothing KingNothing ist offline Mitglied Silber
    Registriert seit
    Jan 2009
    Beiträge
    54
    Gut...

    Also daß Du beim Produktnamen den Herstellernamen schneidest und wieder in die DB schreiben willst, verstehe ich.
    Aber willst Du den Produktnamen in der Tabelle "überschreiben" oder eine neue Spalte anlegen?

    Eigentlich hat beides weniger mit PHP als mit MySQL zu tun.

    Trotzdem, um den Produktnamen zu ändern lautet die MySQL-Syntax
    Code :
    1
    
    UPDATE <tabellenname> SET product_name='<neuer produktname>'
    Um eine neue Spalte für den kürzeren Produktnamen zu erstellen mußt Du
    Code :
    1
    
    ALTER TABLE <tabellenname> ADD COLUMN <spaltenname>
    verwenden. Dann kannst Du wieder mit obiger Anweisung in diese Spalte den Wert schreiben.

    Für ALTER TABLE benötigst Du allerdings ALTER-, INSERT- und CREATE-Rechte!
    Mehr Informationen darüber findest Du unter http://dev.mysql.com/doc/refman/5.1/de/index.html

    Auszuführen mit PHP ist das mit der mysql_query()-Funktion...

    Ich hoffe, daß ich Dich diesmal richtig verstanden habe?
    Sonst mußt nochmal nachhaken...
     

Ähnliche Themen

  1. MySQL Spalte in Datenbank schreiben
    Von sPeEdX im Forum Visual Basic 6.0
    Antworten: 0
    Letzter Beitrag: 11.03.08, 18:44
  2. MySQL neue Spalte > keine funktion!
    Von kadach im Forum Relationale Datenbanksysteme
    Antworten: 6
    Letzter Beitrag: 19.06.07, 19:53
  3. Mysql - Wert aus Spalte auslesen
    Von elena6 im Forum Relationale Datenbanksysteme
    Antworten: 3
    Letzter Beitrag: 04.01.06, 07:29
  4. MYSQL Spalte auf Wert prüfen
    Von dreambaser im Forum Relationale Datenbanksysteme
    Antworten: 4
    Letzter Beitrag: 31.05.05, 16:58
  5. mysql -> wert in spalte suchen
    Von Gaius im Forum PHP
    Antworten: 1
    Letzter Beitrag: 05.01.05, 00:10