+ Antworten
Ergebnis 1 bis 5 von 5

Thema: Variablen zusammensetzen

  1. #1
    Neu an Board
    Registriert seit
    27.10.2008
    Beiträge
    9
    Bedankte sich
    1
    1 Danksagung in 1 Beitrag

    Standard Variablen zusammensetzen

    Hallo,

    habe leider einige Probleme, die ich trotz Freunde und google und Foren nicht lösen konnte.
    Habe bereits sehr vieles ausprobiert, aber ich komme einfach nicht auf die Lösung.

    Folgendes: Habe eine Komponente für den Backend-Bereich mit einem Text-Input-Feld.
    In der Funktion an sich bekomme ich auch die Werte, die ich im Text-Feld eintrage, übertragen. Kann sie auch problemlos in die Datenbank speichern.
    Nur klappt das leider nicht ganz dynamisch.

    In die Datenbank werden Werte bei mir so gespeichert:

    PHP-Code:
        $database->setQuery"UPDATE #__lalala SET betrag='".$betrag[0]."' WHERE cf_id='".$zahl."'"); 
    Wenn ich jetzt mehrere Text-Felder habe, muss entsprechend $betrag[] geändert werden, so dass z.b fürs 3. Feld $betrag[2] steht. Ich bekomm es leider nicht hin.

    Versucht habe ich Folgendes:

    PHP-Code:
    $betrag JRequest::getVar'betrag-', array(), 'post''array' ); 

        
    $betrag2 split'-'$betrag);
        
    $betrag3 $betrag2[1];
        
    $betrag4 $betrag[$betrag3]; 
    Damit müsste ich ja theoretisch dynamisch Werte speichern können....Aber bei $betrag4 scheint ein Fehler zu sein.

    Habt ihr vielleicht eine Idee, wie ich dieses Problem lösen kann?
    Ich weiß, dass ich sehr viele Variablen habe. Aber mir fällt nach 3 Tagen probieren nichts mehr ein.

    Gruß,
    kaktus

  2. #2
    Joomla Guru Avatar von elkuku
    Registriert seit
    14.06.2006
    Ort
    Guayaquil - Südamerika
    Beiträge
    1.689
    Bedankte sich
    74
    Erhielt 517 Danksagungen
    in 397 Beiträgen

    Standard

    Das sieht ehrlich gesagt ziemlich wirr aus :P

    Recht hilfreich wäre wenn Du einmal ganz kurz umreißen würdest, was Du denn vorhast

    Aus das error_reporting würde ich hoch setzen.. bei dem Versuch ein Array zu splitten sollte eigentlich ein Fehler kommen
    Gruß,
    Nikolai
    Hilf mit: Deutsche Joomla! Dokumentation Help testing: EasyCreator Noch Fragen ? Forum.Joomla-Nafu.de

  3. #3
    Neu an Board
    Registriert seit
    27.10.2008
    Beiträge
    9
    Bedankte sich
    1
    1 Danksagung in 1 Beitrag

    Standard

    Erstmal vielen Dank für die Antwort!

    Ich versuchs mal noch genauer mit mehr Code

    Der Code, der die Input-Felder darstellt:

    PHP-Code:
            <td align="center">            
                <input type="text" id="betrag<?php echo $i;?>" name="betrag[<?php echo $i;?>]" size="5" value="<?php
                        $abfrage 
    = ("SELECT * FROM #__lalala WHERE id='".$formid."'");
                        
    $ergebnis mysql_query($abfrage);
                        echo 
    "$row->betrag"?>
                    <?php echo $disabled ?> class="text_area" style="text-align: center" />
                    <a href="#betrag" onclick="return listItemTask('cb<?php echo $i;?>','betrag')">
                        <img border="0" alt="Betrag" src="images/filesave.png"/>
                       </a>    
            </td>
    So, nun kommt die Funktion, in der die Werte übergeben und bearbeitet werden:

    PHP-Code:
        $betrag JRequest::getVar'betrag', array(), 'post''array' ); 
    In die Datenbank kommen die Werte so rein:

    PHP-Code:
        $database->setQuery"UPDATE #__lalala SET betrag='".$betrag[0]."' WHERE cf_id='".$cid[0]."'"); 
    Das funktioniert zwar alles sehr schön, aber wenn ich im Backend 3 Input-Felder habe,
    müsste nun
    PHP-Code:
    $betrag[0] , $betrag[1und $betrag[2
    stehen.

    Wie bekomm ich das nun dynamisch hin, dass dort jeweils immer die Zahl steht, von dem Input-Feld, welches übergeben wurde?

    Ich hoff, es war ausführlicher diesmal

    Gruß,
    kaktus

  4. #4
    Hat hier eine Zweitwohnung
    Registriert seit
    14.01.2006
    Ort
    Nienburg
    Alter
    32
    Beiträge
    1.237
    Bedankte sich
    115
    Erhielt 471 Danksagungen
    in 368 Beiträgen

    Standard

    Zitat Zitat von kaktus-stecher Beitrag anzeigen
    [...]
    Das funktioniert zwar alles sehr schön, [...]
    [...]
    ... auf die Finger!1einself
    Einen MySQL Query innerhalb einer Ausgabe zu benutzen ist ... mh, - erneut auf die Finger ...

    Was hat es mit der Erfassung der Daten als Array auf sich? Warum "UPDATE"? Woher bekommst du das $cid Array und bist du dir soweit sicher, dass dein Vorhaben der Speicherung der Daten in der Datenbank so sinnvoll / notwendig ist?

    Schau dir einige Tutorials zur Entwicklung von Komponenten an und hinterfrage den Code anstatt ihn von dort zu kopieren. Grundlagen zu OOP / MVC - Speichervorgänge sollten über einen Controller angestoßen werden ...

    Warum gehören deine Felder zusammen und in welcher Beziehung stehen diese zum eigentlichen Datensatz. Gibt es weitere Informationen ... Primary Key, Auto Increment, Unsigned ?! ... JTable::load/save(); und so weiter, und so fort.

    Ich weiß das die Antwort dir bei deinem aktuellen "Problem / Vorhaben" nicht sonderlich weiterhelfen wird. Für mich sieht es allerdings so aus, als ruderst du gerade in die falsche Richtung. Wäre schade um die Energie und Motivation.

  5. #5
    Neu an Board
    Registriert seit
    27.10.2008
    Beiträge
    9
    Bedankte sich
    1
    1 Danksagung in 1 Beitrag

    Standard

    Darfst mir gern auf die Finger hauen, aber zu meiner Verteidigung:
    Da ich am Lernen bin, habe ich mir eine Komponente genommen, die bereits besteht. Habe einfach nach meinen Bedürfnissen erweitern und angepasst. Daher auch "Update" und den Rest. $cid wird in der Komponente so verarbeitet und mit $cid gibts auch keine Probleme.

    Ich habe mir bereits sehr viele Tutorials angesehen und durchgearbeitet. Habe mir Joomla-Framework angesehen und versteh das einigermaßen.

    Und leider hilft das noch nicht ganz bei meinem Problem, da ich nach vielem Hin und Her eigentlich weiß, was ich genau brauche. Aber genau dies krieg ich net hin

    Gruß,
    kaktus

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein