Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme beim Connecten

Einklappen

Neue Werbung 2019

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

  • Probleme beim Connecten

    Wollte mit folgendem Code auf meinen MySql Server connecten:

    <
    Code:
    ?php
    define('MYSQL_HOST', 'localhost');
    define('MYSQL_USER', 'xxx');
    define('MYSQL_PASS', 'xxx');
    define('MYSQL_DATABASE', 'Zitate'); 
    
    mysql_query($db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS));
    
    @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
        die("Es konnte keine Verbindung aufgebaut werden\n".mysql_error());
    @mysql_select_db(MYSQL_DATABASE) OR
        die("Konnte ".MYSQL_DATABASE." nicht benutzen ".mysql_error());    
    ?>
    <?php
        $hinzufuegen =$_REQUEST['hinzufuegen'];
        
        echo"<form action='raufladen.php' METHOD='POST'>";
        echo "Hier bitte neue Zitate eingeben";
        echo"<input type='text' name='hinzufuegen' $REQUEST_METHOD == 'POST')"
    ?>
    
    <?php
        $eintrag = "INSERT INTO Zitate(Zitat) VALUES ($hinzufuegen)";
        mysql_query($eintrag);        
    ?>
    Mir kommt jedoch immer die Fehlermeldung: "Konnte Zitate nicht benutzen Access denied for user 'xxx'@'localhost' to database 'Zitate'"

    Die Tabelle Zitate gibt es! Weiß jemand woran das liegt, bzw was ich ausprobieren kann?


  • #2
    Datenbank <> Table
    Heißen die wirklich beide "Zitate"?
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      Har stimmt! Das war der Fehler Danke!

      Andere Frage...

      Code:
      <?php
      define('MYSQL_HOST', 'localhost');
      define('MYSQL_USER', 'xxx');
      define('MYSQL_PASS', 'xxx');
      define('MYSQL_DATABASE', 'xxx'); 
      
      mysql_query($db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS));
      
      @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) OR
          die("Es konnte keine Verbindung aufgebaut werden\n".mysql_error());
      @mysql_select_db(MYSQL_DATABASE) OR
          die("Konnte ".MYSQL_DATABASE." nicht benutzen ".mysql_error());    
      
          $hinzufuegen =$_REQUEST['hinzufuegen'];
          
          echo"<form action='raufladen.php' METHOD='POST'>";
          echo"Hier bitte neues Zitat eingeben ";
          echo"<input type='text' name='hinzufuegen'>";
          echo"<input type='submit' value='senden'></input>";
          echo"</form>";
      
          $eintrag = "INSERT INTO Zitate('Zitat') VALUES ('$hinzufuegen')";
          mysql_query($eintrag);        
      ?>
      Er schreibt mir einfach keinen Eintrag in die Tabelle rein? Stimmt das so wie ich das mache!? Oder muss ich da irgendwo noch ein mysql_query oder so dazu tun? Weiß leider ned genau, wann ich das brauche...

      Kommentar


      • #4
        1. Zitat von krackmoe
          mysql_query($db_link = @mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS));
          Ersatzlos streichen.
        2. mysql_query(...) or die(mysql_error()).
        3. Statt _REQUEST _POST verwenden.
        4. $hinzufuegen = mysql_real_escape_string($_POST['hinzufuegen']);
        5. PHP-Code:
          echo '
            <form action="raufladen.php" method="POST">
              <div>
                Hier bitte neues Zitat eingeben
                <input type="text" name="hinzufuegen">
                <input type="submit" value="senden" />
              </div>
            </form>
          '

        Kommentar


        • #5
          Zusätzlich:
          Anonymisiere zuerst mal deine Zugangsdaten!
          Dann nimm alle «@» aus dem Code

          Dann aber die Hauptfrage: Wo überprüfst du, ob das Formular überhaupt abgeschickt wurde?

          Wenn du den Forumsregeln entsprächend das error_reporting eingeschaltet hättest, gäbe das ein paar hübsche Fehlermeldungen
          Gruss
          L

          Kommentar


          • #6
            Wah Danke jedenfalls wegen den Zugangsdaten.. gar nicht gecheckt!

            Wofür sind die @ eigentlich gut? Hab ich so auf einer Php Seite gefunden..

            Okay.. ich werd mir das schnell mal ansehen und dann darauf antworten!

            Kommentar


            • #7
              Hallo!

              Die @ Zeichen sind dazu da Fehlermeldungen zu unterdrücken! Um zu testen ob auch alles klappt solttest du immer auf das @ verzichten!
              Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
              http://www.lit-web.de

              Kommentar

              Lädt...
              X