zwei Dateien zusammenfügen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • zwei Dateien zusammenfügen

    Wie kann ich die beiden folgenden Dateien zu einer zusammensetzen ???
    Sollte irgendwie mit "PHP_SELF" funktionieren.

    Datei 1: ....../xy.php?var=799005
    PHP-Code:
    // ausführen einer SQL Anfrage
    $result2 mysql_query("SELECT max(lfd_nr) AS 'max_lfd_nr' FROM streichliste WHERE FondsNr=$var AND status=1 GROUP BY FondsNr");
    $top mysql_fetch_array($result2);
    for (
    $i 1$i <=2$i++) {
    $highest $top['max_lfd_nr']+$i;
    $res mysql_query("REPLACE INTO streichliste (FondsNr,lfd_nr,status) VALUES ('$var','$highest','0')") or die(mysql_error());
    }
    // ausführen einer SQL Anfrage
    $result3 mysql_query("SELECT Fonds AS 'Fonds',Konto AS 'Konto',Kürzel AS 'Kürzel',FondsNr AS 'FondsNr',lfd_nr AS 'lfd_nr',status AS 'status' FROM dritt_fonds AS A LEFT OUTER JOIN streichliste AS B ON A.Konto=B.FondsNr WHERE Konto=$var ORDER BY lfd_nr ASC");
    echo 
    '<form action="streichen.php" method="post">';
    echo 
    '<table border=1>';
    // Ausgabe des Tabellenkopfes
    echo '<tr><td ALIGN=center colspan="2"><FONT SIZE=2 FACE=ARIAL><B>'.$kurz.'</B></FONT></td></tr>';
    // Ausgabe der Tabellenzeilen
    $counter=0;
    while (
    $line=mysql_fetch_array($result3)) {
    echo 
    '<tr><td>'.$line['lfd_nr'].'</td>
    <td>
    <INPUT type="hidden" name="Fonds['
    .$counter.']" value='.$line['FondsNr'].'>
    <INPUT type="hidden" name="LfdNr['
    .$counter.']" value='.$line['lfd_nr'].'>
    <INPUT type="checkbox" name="box['
    .$counter.']" value="1" '.($line['status']==" checked" "").'></td></tr>';
    $counter++;
    }
    echo 
    '</table>';
    ?>
    <input type=submit value="streichen"></form> 

    Datei 2: ....../streichen.php
    PHP-Code:
    foreach ($_POST['Fonds'] AS $k => $v
    {
        
    $records "(".$v.",".$_POST["LfdNr"][$k].",".( isset($_POST["box"][$k]) ? "1" "0" ).")";
        
    mysql_query("REPLACE INTO streichliste (FondsNr, lfd_nr, status) VALUES $records") or die(mysql_error());
    echo 
    ''.$records.'';

    Zuletzt geändert von Honny; 07.09.2003, 00:22.

  • #2
    hä?

    wieso php-self?

    wenn du sie wirklich zusammen setzen willst, dann einfach hintereinander in eine datei packen. aber ich glaube da wärst du auch selbst drauf gekommen und bitte dich deshalb dein anliegen nochmal zu beschreiben.

    Kommentar


    • #3
      "PHP_SELF" deswegen, weil das Ganze ja ein Formular ist, was beim Abschicken ja dann an sich selbst geschickt wird, wenn alles in eine Datei gepackt wird.

      Statt: .....<form action="streichen.php" method="post">
      muß es dann heißen: ......<form action="'.$PHP_SELF.'" method="post">

      Mein Problem ist mehr die Gestaltung der Variablen-Übergabe.

      Kommentar


      • #4
        warum self und nicht einfach den dateinamen.

        was meinst du mit varübergabe? ganz einfach per Post!

        Kommentar


        • #5
          Wofür braucht man "PHP_SELF" sonst ???

          Schau' dir meinen geposteten Code doch bitte mal etwas genauer an:

          1. Datei 1: ....../xy.php?var=799005

          2. $res = mysql_query("REPLACE INTO streichliste (FondsNr,lfd_nr,status) VALUES ('$var','$highest','0')") or die(mysql_error());

          Und wie muß dann "PHP_SELF" formuliert werden ??? --> "PHP_SELF?var=?????????????

          Einfaches zusammenkopieren des Codes der beiden Dateien funzt nämlich nicht ! Liegt wohl irgendwie an der o. g. Parameter-Übergabe ???
          Zuletzt geändert von Honny; 07.09.2003, 00:24.

          Kommentar


          • #6
            ich weiß einfach nicht was du willst.

            tatsache ist das php-self den aktuellen dateinamen zurück gibt. und den kannst du auch direkt angeben.

            Kommentar


            • #7
              Das weiß ich auch ! Aber das ist hier nicht mein Thema !
              Sag' doch direkt, daß du keine Ahnung hast ! (Nimm 's nicht persönlich, bist halt noch ziemlich jung !)

              Werd' ich wohl auf einen etwas kompetenteren Gesprächspartner warten müssen.

              Kommentar


              • #8
                Danke auch, wenn du da mal deinen alten Mund nicht zu voll genommen hast. Also ich wüsste, wenn ich keine Ahnung davon habe. (sorry, wenn ich das sehr wohl persönlich nehme.)

                jemand der eine Variable die per POST/GET übergeben wird mit $var aufruft, der hat keine Ahnung.
                OffTopic:
                1:0 für mich!!! honnecker sie sind Raus!
                Zuletzt geändert von TobiaZ; 05.09.2003, 23:11.

                Kommentar


                • #9
                  Möchte dir dennoch gerne helfen.

                  Du sagst
                  Einfaches zusammenkopieren des Codes der beiden Dateien funzt nämlich nicht ! Liegt wohl irgendwie an der o. g. Parameter-Übergabe ???
                  das klingt gut, und logisch. Du hast zwar nicht gesagt, was passiert, aber ich vermute mal, dass $var leer bleibt.

                  Und wie muß dann "PHP_SELF" formuliert werden ??? --> "PHP_SELF?var=?????????????
                  Ich weiß zwar nicht, wie du das mit formuliert meinst, aber ich würde sagen (vorrausgesetzt, beide codes sind in der selben Datei) dann musst du
                  PHP-Code:
                  'action="'.$_SERVER[PHP_SELF].'?var=bla">'
                  Da kannst du aber auch wie gesagt direkt den Dateinamen angeben.

                  Kann sein, dass ich dich missverstanden habe.

                  Kommentar


                  • #10
                    Hab' doch gewußt, daß du keine Ahnung hast !
                    Die Variable wird weder mit "POST" noch mit "GET" übergeben: --> ....../xy.php?var=799005


                    OffTopic:
                    1:5 für dich - Game over !!!
                    Zuletzt geändert von Honny; 07.09.2003, 00:27.

                    Kommentar


                    • #11
                      das ist eine URL, oder?

                      Kommentar


                      • #12
                        Riiiiiiichtig !

                        Kommentar


                        • #13
                          also GET!!!

                          MERKE: nicht nur mittels <form method=GET...> ist eine Übergabe per GET möglich, da dies dem Browser nämlich nur sagt, dass er die Formdaten über die URL (GET) schicken soll.

                          Mein lieber herr PointIT.

                          Kommentar


                          • #14
                            Also, zusammengefasst würde der Code so aussehen:

                            PHP-Code:
                            foreach ($_POST['Fonds'] AS $k => $v
                            {
                                
                            $records "(".$v.",".$_POST["LfdNr"][$k].",".( isset($_POST["box"][$k]) ? "1" "0" ).")";
                                
                            mysql_query("REPLACE INTO streichliste (FondsNr, lfd_nr, status) VALUES $records") or die(mysql_error());
                            echo 
                            ''.$records.'';
                            }
                            // ausführen einer SQL Anfrage
                            $result2 mysql_query("SELECT max(lfd_nr) AS 'max_lfd_nr' FROM streichliste WHERE FondsNr=$var AND status=1 GROUP BY FondsNr");
                            $top mysql_fetch_array($result2);
                            for (
                            $i 1$i <=2$i++) {
                            $highest $top['max_lfd_nr']+$i;
                            $res mysql_query("REPLACE INTO streichliste (FondsNr,lfd_nr,status) VALUES ('$var','$highest','0')") or die(mysql_error());
                            }
                            // ausführen einer SQL Anfrage
                            $result3 mysql_query("SELECT Fonds AS 'Fonds',Konto AS 'Konto',Kürzel AS 'Kürzel',FondsNr AS 'FondsNr',lfd_nr AS 'lfd_nr',status AS 'status' FROM dritt_fonds AS A LEFT OUTER JOIN streichliste AS B ON A.Konto=B.FondsNr WHERE Konto=$var ORDER BY lfd_nr ASC");
                            echo 
                            '<form action="streichen.php" method="post">';
                            echo 
                            '<table border=1>';
                            // Ausgabe des Tabellenkopfes
                            echo '<tr><td ALIGN=center colspan="2"><FONT SIZE=2 FACE=ARIAL><B>'.$kurz.'</B></FONT></td></tr>';
                            // Ausgabe der Tabellenzeilen
                            $counter=0;
                            while (
                            $line=mysql_fetch_array($result3)) {
                            echo 
                            '<tr><td>'.$line['lfd_nr'].'</td>
                            <td>
                            <INPUT type="hidden" name="Fonds['
                            .$counter.']" value='.$line['FondsNr'].'>
                            <INPUT type="hidden" name="LfdNr['
                            .$counter.']" value='.$line['lfd_nr'].'>
                            <INPUT type="checkbox" name="box['
                            .$counter.']" value="1" '.($line['status']==" checked" "").'></td></tr>';
                            $counter++;
                            }
                            echo 
                            '</table>';
                            ?>
                            <input type=submit value="streichen"></form> 
                            Dann kommt folgende Fehlermeldung:
                            "Warning: Invalid argument supplied for foreach() in /public/www/kunden/k0026/htdocs/streichliste.php on line 21"

                            Zeile 21 ist:
                            PHP-Code:
                            foreach ($_POST['Fonds'] AS $k => $v

                            Kommentar


                            • #15
                              du ziehst dich aber schnell aus der Affäre... Was wohl zeigt, dass doch der Sprössling recht hatte!!! Nun gut!

                              Fangen wir an zu debuggen... mehr kann ich von hier ja schlecht machen..

                              ist $_POST leer? mit sicherheit. mal mal ne ausgabe von post!

                              Kommentar

                              Lädt...
                              X