MySQL liest, aber ohne update

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

  • #16
    Hab mir jetzt nochmal allen Code in diesem Thread angesehen und seh leider nich mehr ganz durch.
    Kannst du bitte nochmal allen Code posten? Dabei Include-Anweisungen durch den Code aus dem jeweiligen Include ersetzen, so daß alles wie aus einer Datei aussieht. Dann kann man dir auch sofort sagen, ob irgendwo ein Fehler ist (ich würde es zumindest versuchen, nobody is perfect).

    Und falls sich die Fehlermeldung geändert hat, die neue bitte auch noch verkünden.

    Kommentar


    • #17
      Original geschrieben von Arjuna
      Das sind aber nicht mehr meine Posts die nun 'darüber' gehen
      will dir ja nicht den Spaß verderben
      aber du bist die(? ich hoffe mal das ist richtig ^^,) einzige, die PHP-Code gepostet hat *hust*

      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #18
        Re: MySQL liest, aber ohne schreiben

        Original geschrieben von Arjuna
        Fehlermeldung:
        Access denied for user: \'ODBC@localhost\' (Using password: NO)

        Umgebung:
        Mysql 5.3
        Apache 2
        php 5.0.3
        Localhost


        Ich bin über jede Idee, Hinweis oder Vorschlag dankbar.

        Gruss
        Arj
        hallolele,

        wenn ich bei mir in MySQL reingehe, kann ich unter "User Administration" connecten
        und da sehe ich wer alles zugreifen darf und mit welcher Berechtigung.
        Checke doch mal, was da bei Dir so steht und ob alles korrekt ist.

        Und dann nochmal abgleichen mit
        MYSQL_USER und MYSQL_PASS in deiner php-definition.

        In meinen php mache ich als so ziemlich erste Anweisung dann erst mal
        ein
        mysql_connect und ein mysql_select_db um von vornerein
        auszuschliessen, dass beim user später frust aufkommt, wenn er nach der
        ersten oder zweiten Seite dann auf einmal nen sql-problem hat.

        wenn ich also gleich am anfang schon nicht connecten kann, gibts auch keine startseite.

        mehr fällt mir erst mal nicht ein...

        kuempi

        Kommentar


        • #19
          Um meine SQL-Anweisungen zu überprüfen, habe ich mir folgende Fuktion "gebastelt". Es wäre sinnvoll, sowas mal einzubauen und dann zu testen.
          Erstmal das Connecten, dann die Funktion:

          Beispiel:

          PHP-Code:
          <?php
          // Hier werden die Zugangsdaten eingegeben
          $server             "localhost";
          $datenbank          "test";
          $datenbank_benutzer "root";
          $datenbank_passwort "pw";
           
           
          $connection mysql_connect($server,$datenbank_benutzer,$datenbank_passwort); 
          /* Baut eine Verbindung zum MySQL-Server auf ...

          Jedoch weiss ich nicht, ob es sinnvoll ist, die Verbindung
           in einer Variablen zu speichern, wenn man nur eine 
          Connection hat. Ich habe Nämlich auf unsem 
          Portal manchmal 2 connections */

          fehler_check(__LINE__$connecton);

          fehler_check(__LINE__
          mysql_select_db($datenbank$connection), " mysql_select_db($datenbank$connection) "); 
          // ...und verbindet sich mit der Datenbank
           
          $sql    "SELECT * FROM test WHERE id=$id"
          // Formulieren der SQL-Anweisung...
          $result mysql_query($sql,$connection);
           
          // ..und das Ausführen davon

          fehler_check(__LINE__$result$sql); 
          // Hier wird geprüft, ob es Fehler gab.
          ?>


          Quelltext der Überprüfung

          PHP-Code:
          <?php
          function fehler_check($zeile$result$sql=" "){
           
          // hier holt das Script Daten über den Benutzer und der MySQL-Verbindung
           
          global $REMOTE_ADDR;
           global 
          $HTTP_USER_AGENT;
           global 
          $HTTP_REFERER;
           global 
          $REQUEST_URI;
           global 
          $_REQUEST;
           global 
          $connection;

           if(!
          $result){ // Falls das Resultat ungültig ist ...
            
          echo("<p style=\"color=red\">"); // ... mache die Schriftart Rot
            
          echo("Es liegt ein Fehler vor!<br><br>"); 
          // Und schreibe, dass es ein Fehler gibt.


            
          $fehlertext " [" date("Y/m/d H:i:s") . "]<br> $REQUEST_URI <br>
          <br>Übergebene Parameter:<br>
          Zeile: 
          $zeile<br><br>
           
          $sql  <br><br>
          mysql_errno() . ": " mysql_error() . " "
          // Der Fehlertext wird aus den Daten hergestellt

            
          if(error_log($fehlertext0)){ // und im Apache-Log gespeichert
             
          echo("Im Apache-Log dokumentiert!<br>");
            }
            else{
             echo(
          "Fehler beim speichern im Apache-Log!<br>");
            }

            
          // hier wird die E-Mail vorbereitet
            
          $boundary "-----=" md5(uniqid(rand() . time())) . "\n";
            
          $headers .= "From: \"Admin\" <admin@localhost>\n";
            
          $headers .= "MIME-Version: 1.0\n";
            
          $headers .= "Content-Type: text/html; boundary=\"$boundary\"\n";
            if(
          mail("admin@localhost""Fehler"$fehlertext$headers)){ // und versendet
             
          echo("Dem Adminstrator wurde eine E-Mail gesendet!<br>");
            }
            else{
             echo(
          "Fehler beim versenden der Mail!<br>");
            }

            echo(
          "</p>"); 
            die(); 
          // Dann wird das aktuelle Script abgebrochen
           
          }
          ?>
          Zuletzt geändert von Fornax; 24.08.2005, 17:59.

          Kommentar


          • #20
            Vielen dank, werd ich morgen gleich ausprobieren.

            Ironie des Schicksals, dort wo ich ichs internet komme, kann ich keinen localhost nutzen, und wo ich den Apache habe, is kein internet...

            @ ghost:
            Ne ich bin ein Er. Aber macht nix, bin michs gewohnt
            Ich dir deinen auch ned aber guck mal wessen Text noch über meinen Code hinaus geht
            C = Constant
            A = And
            N = Neverending
            I = Improvement

            Kommentar


            • #21
              OffTopic:
              Psst, schau mal hier: http://hotscripts.com/PHP/Software_a...its/index.html
              Ich kann XAMPP empfehlen.

              Kommentar


              • #22
                Original geschrieben von onemorenerd
                OffTopic:
                Psst, schau mal hier: http://hotscripts.com/PHP/Software_a...its/index.html
                Ich kann XAMPP empfehlen.
                Hatte ich, war mir aber zu unübersichtlich, so hab ich mir es von Xampp ausgehen runtergetuned bis ich nur noch das hatte was ich wollte.

                Ehrlich gesagt, Xampp find ich auch das beste Paket von allen (mir bekannten), doch habe ich gerne meine EIGENE ORDER struktur, und mag vorgegebene sachen grundsätzlich ned..

                Stell dir vor, ich hatte es sogar mal mit dem IIS6 versucht!! *hände in die höhe wirft*

                Bin mal gespannt was 'Vonarxs' code ergiebt, oder ob Kuempis Vorschlag dem Problem den Endschuss gibt..
                Freu mich schon auf zu hause, gleich testen
                C = Constant
                A = And
                N = Neverending
                I = Improvement

                Kommentar


                • #23
                  Original geschrieben von Arjuna
                  Ne ich bin ein Er. Aber macht nix, bin michs gewohnt
                  falschen Nicknamen gewählt

                  Ich dir deinen auch ned aber guck mal wessen Text noch über meinen Code hinaus geht
                  und wessen Text soll das sein? (Du weißt, dass normaler Text automatisch umgebrochen wird, nur pre-Text verantwortlich ist? wie in php-code)

                  Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                  bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                  Wie man Fragen richtig stellt

                  Kommentar


                  • #24
                    @ghost, ok ich bin ja ruhig
                    Is ausnahmsweise kein mal Nick.. für (Entwickler)Foren nehm ich immer den richtigen Namen, ist ja eigentlich egal

                    @Fornax, super script. Doch die einzige Fehlermeldung die ich erhliet war die über function.sendmail. Welche ich fast erwartet hatte, da ich meinen Localhost nicht dafür konfiguriert habe (wieso auch ohne internet)..

                    @Kuempi, bin deine 'checkliste' nochmals durchgegangen und alles überprüft. Alles korrekt.

                    Ich weiss jetzt nicht wie man das nennt, aber ich arbeite alles über index.php ab, also localhost/?p=main als Beispiel öffnet die main.php im order localhost/php/.
                    Die erste Zeile nach "<?php" ist "include("../gethost.inc.php")" welche dann ja die login datei abarbeitet.
                    C = Constant
                    A = And
                    N = Neverending
                    I = Improvement

                    Kommentar


                    • #25
                      Hat irgendjemand sonst noch eine Idee woran es liegen könnte?
                      Ich bin wirklich am verzweifeln.

                      Hoffnungsvoller gruss
                      Arjuna
                      C = Constant
                      A = And
                      N = Neverending
                      I = Improvement

                      Kommentar


                      • #26
                        mal ne ganz dumme Frage, hat der MySQL-User Rechte zum Schreiben? Vielleicht darf der nur lesen?
                        Mal einfach mit root als User probiert? XD

                        ansonsten, wenn du kein Problem damit hast, kannst du ja das komplette Skript mal hochladen (inklusive der Angabe der Rechte des MySQL-Users)

                        Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                        bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                        Wie man Fragen richtig stellt

                        Kommentar


                        • #27
                          Original geschrieben von ghostgambler
                          (...... )ansonsten, wenn du kein Problem damit hast, kannst du ja das komplette Skript mal hochladen (inklusive der Angabe der Rechte des MySQL-Users) [/B]
                          Erm, welches komplete script? Es geht mir ned anders als dir, ca 20 sites, davon die hälfte für 'kumpels' und die andere hälte halb professionells, die restlichen 5 teilen sich in Voll-Fremd und Selbst-Professionell auf...

                          Aber mit "Komplett" weiss ich ned wirklich ob du 'nur' die verbindungen meinst, oder wirklich alles, weil 'wirklich' alles würde ich nur per email senden... Ist zu viel herzblut darin als das ich es veröfentlichen möchte...
                          EDIT: die Seite unten ist die Seite worum es geht, es ist derzeit mein Juwel! Das Meisterwerk, alles selbst gecoded.. und ich meine alles ausser 2 inc functions, wovon ich nur 1 einmal verwende....

                          Ca 1 Jahr C++(4) und ca 13 Jahre VB (3/4/5/6)... HTML/php naja, seit ich das Internet kenne (ca 1997) (mysql seit ca 3 wochen, von fertigen scripts gelernt). Hab grad null schimmer vorauf du aus bist, sorry.

                          Vieleicht habe ich probleme dich zu verstehen, da ich im 'Hinterkopf' immer denke das LOCALHOST diesbezüglich IMMER ADMIN RECHTE hat...
                          Falls du mich etwas besseren belehren kannst, lerne ich gerne dazu...
                          Jedenfalls ist der User/Pw immer der ADMIN den ich bei den Treiber für Datenbanken (ODBC)-Einstellungen identisch mit denen des mysql Admins (im dortiten script festegelet), siehe obigen post.... (alle settings überprüft, hab darauf geachtet das überall admin ist...

                          EDIT:
                          Pseudo funktionierende seite sichtbar auf:
                          http://wow-macros.necroman.net

                          Das problem trifft jedoch auf ALLE Localhost Seiten zu die ich habe!!!!
                          Im internet scheint es zu funktionieren, aber NICHT LOCALHOST...
                          Zuletzt geändert von Arjuna; 28.08.2005, 03:39.
                          C = Constant
                          A = And
                          N = Neverending
                          I = Improvement

                          Kommentar


                          • #28
                            Original geschrieben von Arjuna
                            Vieleicht habe ich probleme dich zu verstehen, da ich im 'Hinterkopf' immer denke das LOCALHOST diesbezüglich IMMER ADMIN RECHTE hat...
                            das ist aber nicht so, das ist nur so wenn du es MySQL auch sagst. Z.B. hatte ich auf meinem Linux-Rechner eingestellt, dass jeder, ohne Passwort, alles machen kann, weil das Ding nicht am Internet hing. Auf dem Rechner, womit ich grade hier schreibe, hab ich das natürlich nicht gemacht, da hab ich jedem User ein Passwort zugewiesen und selbst da war ich dann noch vorsichtig mit den Rechten (welches Skript braucht schon GRANT? )

                            Schnapp dir phpMyAdmin, geh auf die Rechte und überprüfe da, ob das alles so passt, sodass es funktionieren sollte!

                            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                            Wie man Fragen richtig stellt

                            Kommentar


                            • #29
                              Nun hab ich mir die Rechte bei PMA angesehen, hatte sogar GRANT auf dem user mit welchem ich in die DB schreiben wollte.

                              Daran konnte es also auch ned liegen.
                              Achso was ich noch vergass zu sagen, die login datei wird von allen domains verwendet, da es nur subdomains sind..

                              Zur anschaung:
                              http://wow-macros.necroman.net

                              Ich hab echt keinen schimmer wieso es im netz geht, aber nicht lokal.. :|
                              C = Constant
                              A = And
                              N = Neverending
                              I = Improvement

                              Kommentar


                              • #30
                                Original geschrieben von Arjuna

                                Das problem trifft jedoch auf ALLE Localhost Seiten zu die ich habe!!!!
                                Im internet scheint es zu funktionieren, aber NICHT LOCALHOST...
                                joo, ich nochmal.
                                Probleme mit >localhost< deuten manchmal auch auf einen falschen oder nicht vorhandenen Eintrag in der Datei "HOSTS" hin.
                                Die gibt es auf allen Systemen und ist immer ähnlich aufgebaut.
                                Steht in Deiner was drin bezüglich localhost und wenn ja was?

                                kuempi

                                Änderung
                                ------------
                                ach ne, issa ja quatsch.
                                wenn HOSTS nicht stimmen würde, gäbe es gar keinen Zugriff, aber Du kannst ja lesen, nur update nich.
                                mhh. vergiss es.
                                muss nen berechtigungsprob sein..
                                Zuletzt geändert von kuempivonstein; 01.09.2005, 09:31.

                                Kommentar

                                Lädt...
                                X