Mysteriöser PHP-MySQL fehler

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Mysteriöser PHP-MySQL fehler

      ich bin auf einen wirklich komischen fehler gestoßen
      wenn ich mit

      PHP-Quellcode

      1. while($row = mysql_fetch_array($query)){
      2. echo $row[0];
      3. echo $row->Name;

      aufrufe bekomme ich nur den wert von echo $row[0] zurück aber den von der 2ten zeile nicht
      hab schon einiges probiert aber hab keine lösung gefunden
      hier mal die tabellenstruktur

      PHP-Quellcode

      1. `Name` varchar(60) character set ascii NOT NULL COMMENT 'Die überschrift',
      2. `Img` varchar(60) character set ascii NOT NULL COMMENT 'Das Bild(falls vorhanden)',
      3. `User` varchar(30) character set ascii NOT NULL COMMENT 'Der Poster',
      4. `Text` text character set ascii NOT NULL COMMENT 'Der Text',
      5. `Lnk` varchar(60) character set ascii NOT NULL COMMENT 'Linl(falls vorhanden)'
      6. ) ENGINE=MyISAM DEFAULT CHARSET=latin1;

      ich sehe den fehler nicht
      dieses problem habe ich aber in allen php files auf der webspace
      da auf meinem laptop mysql streikt hab ich ne kilu webspace genommen könnte es daran liegen?

      und ich hab auch noch ein problem bei diesem kleinen such script gibt er mir eine ganze menge mysql fehler raus

      PHP-Quellcode

      1. <?php
      2. $Searchquerry="SELECT * FROM `column` WHERE ";
      3. $and=false;
      4. $titlearray = split(' ', $_POST["title"]);
      5. foreach($titlearray AS $Search) {
      6. if($and==false) {
      7. $Searchquerry .= "`Name` LIKE '%{$Search}%'";
      8. $and=true;
      9. } else {
      10. $Searchquerry .= " and `Name` LIKE '%{$Search}%'";
      11. }
      12. }
      13. $textarray = split(' ', $_POST["des"]);
      14. foreach($textarray AS $Search) {
      15. if($and==false) {
      16. $Searchquerry .= "`Description` LIKE '%{$Search}%'";
      17. $and=true;
      18. } else {
      19. $Searchquerry .= " and `Description` LIKE '%{$Search}%'";
      20. }
      21. }
      22. if($_POST["poster"] !="ALL"){
      23. $Search = $_POST["poster"];
      24. $Searchquerry .= " and `User` LIKE '%{$Search}%'";
      25. }
      26. $con = mysql_connect($host, $user, $pass);
      27. mysql_select_db($db);
      28. $query = mysql_query($Searchquerry);
      29. while($row = mysql_fetch_array($query)){
      30. $Username = $row['`User`'];
      31. $Image = $row['`Image`'];
      32. $Name = $row['`Name`'];
      33. $Des = $row['`Description`'];
      34. $Rate = $row['`Rate`'];
      35. $ID = $row['`ID`'];
      36. echo "<br><br><div id=\"PicBorder\"><a href=\"Seite.php?id={$ID}\"><img src=\"{$Image}\"></a></div><div id=\"TexBorder\">{$Username}:<br><b>{$Name}</b><br>Wertung: {$Rate}</div><br><br>";
      37. }
      38. mysql_close($con);
      39. ?>
      Alles anzeigen

      die fehler sind:

      Quellcode

      1. Suchergebnisse
      2. Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'www-data'@'localhost' (using password: NO) in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 79
      3. Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'www-data'@'localhost' (using password: NO) in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 80
      4. Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 80
      5. Warning: mysql_query() [function.mysql-query]: Access denied for user 'www-data'@'localhost' (using password: NO) in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 81
      6. Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 81
      7. Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 82
      8. Warning: mysql_close() expects parameter 1 to be resource, boolean given in /data/multiserv/users/333586/projects/1049354/www/Page/DoSearch.php on line 91
      Alles anzeigen

      zeilen 78-91(die die in den errors erwähnt werden)

      PHP-Quellcode

      1. con = mysql_connect($host, $user, $pass);
      2. mysql_select_db($db);
      3. $query = mysql_query($Searchquerry);
      4. while($row = mysql_fetch_array($query)){
      5. $Username = $row['`User`'];
      6. $Image = $row['`Image`'];
      7. $TutorialName = $row['`Name`'];
      8. $TutorialDes = $row['`Description`'];
      9. $TutorialRate = $row['`Rate`'];
      10. $TutorialID = $row['`ID`'];
      11. echo "<br><br><div id=\"PicBorder\"><a href=\"Tutorials.php?id={$TutorialID}\"><img src=\"{$Image}\"></a></div><div id=\"TexBorder\">{$Username}:<br><b>{$TutorialName}</b><br>Wertung: {$TutorialRate}</div><br><br>";
      12. }
      13. mysql_close($con);
      Alles anzeigen


      warum funktioniert es nicht auf deise weise loggen sich ja auch alle anderen php files auf dem server in mysql ein
      von 4 scripts ist das das einzige das solch ein problem verursacht
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • [FONT="Comic Sans MS"][COLOR="DeepSkyBlue"][SIZE="2"]Also zum Ausgeben, ich meine das Konstrukt $row->Name gibts erst in Verbindung mti MySQLi oder irre ich mich?
      Ich habs jedenfalls in dieser Verbindung kennengelernt, bin in der OOP-Schreibweise von PHP eig noch neu, habe vorher immer prozedural gearbeitet.
      Vll kanns daran liegen.

      Zu deinen Fehlern, ich würde mal die Verbindung prüfen, er kann nämlich keine Verbuindung zu DB herstellen, sind die Daten alle korrekt?
      Die andere Fehler beruhen darauf, dass eben die Verbindung zur DB scheitert, daher ist $con auch ein bool, die Variable enthält nämlich ein false, dass von mysql_connect zurückgegeben wurde (bei erfolgreicher Verbindung enthält die variable die Ressourcenkennung der Verbindung)
      Am besten, du prüfst deine Daten mal nochmals und dann sollten die MySQL Fehler verschwinden[/SIZE][/COLOR][/FONT]
    • internetfreak;204268 schrieb:

      [FONT="Comic Sans MS"][COLOR="DeepSkyBlue"][SIZE="2"]Also zum Ausgeben, ich meine das Konstrukt $row->Name gibts erst in Verbindung mti MySQLi oder irre ich mich?
      Ich habs jedenfalls in dieser Verbindung kennengelernt, bin in der OOP-Schreibweise von PHP eig noch neu, habe vorher immer prozedural gearbeitet.
      Vll kanns daran liegen.

      Zu deinen Fehlern, ich würde mal die Verbindung prüfen, er kann nämlich keine Verbuindung zu DB herstellen, sind die Daten alle korrekt?
      Die andere Fehler beruhen darauf, dass eben die Verbindung zur DB scheitert, daher ist $con auch ein bool, die Variable enthält nämlich ein false, dass von mysql_connect zurückgegeben wurde (bei erfolgreicher Verbindung enthält die variable die Ressourcenkennung der Verbindung)
      Am besten, du prüfst deine Daten mal nochmals und dann sollten die MySQL Fehler verschwinden[/SIZE][/COLOR][/FONT]


      $row->name greift einfach auf die Eigenschaft "name" des Objektes Row zu. Mehr dazu werd ich nicht sagen, auser folgendes:
      Guck auf die Funktion mysql_fetch_object. Sollte selbsterklärend sein. Und erkundige mal was mysqli überhaubt wirklich ist.
    • [FONT="Comic Sans MS"][COLOR="DeepSkyBlue"][SIZE="2"]Ich bin neu in der OOP Schreibweise von PHP, habe vorher immer prozedural gearbeitet mittels mysql_fetch_array()
      Und ja, ich redete bissl Quark, $name->row hat überhaupt wenig mit MySQLi zu tun, fällt mir mal beiläufig auf, da es einfach dank der OOP von PHP nun möglich is, MySQL und MySQLi unterstützen beide OOP soviel ich weiß seit PHP5.3
      Von daher sry, wenn ich mal wieder etwas falsch alg ;D
      Shit happens und Nobody is perfect (Ich bin nicht Nobody)[/SIZE][/COLOR][/FONT]
    • felix;205407 schrieb:

      $row->name greift einfach auf die Eigenschaft "name" des Objektes Row zu. Mehr dazu werd ich nicht sagen, auser folgendes:
      Guck auf die Funktion mysql_fetch_object. Sollte selbsterklärend sein. Und erkundige mal was mysqli überhaubt wirklich ist.


      Und das ist wieder mal typisch MCore. So frei nach dem Motto ich weiß was aber ich sags nicht. Es ist weder konstruktiv noch hat es im entferntesten etwas mit dem Thema zu tun. Eigentlich ist es reiner Spam. Ich weiß das auch mein Post eigentlich Spam ist, aber ich musste einfach etwas zu dem Verhalten schreiben. Weil wenn man von Anfang, bevor man überhaupt schreibt, schon weiß das man eh nicht helfen will, dann sollte man es doch gefälligst lassen.