mysqli liefert falsche Spaltennamen (aufm Webserver gehts)

Alles, was PHP betrifft, kann hier besprochen werden.

mysqli liefert falsche Spaltennamen (aufm Webserver gehts)

Postby OneWorld » 23. February 2010 20:34

Ich komme hier nicht mehr weiter und bitte um eure Hilfe ;(

Folgendes passiert auf meinem lokalem xampp-Server reproduzierbar:

Wenn ich mit der mysqli funktion in meinem PHP-Skript...
2 spalten einer tabelle abfrage, ist alles ok (SELECT spalte1, spalte2 FROM tabelle)
3 spalten einer tabelle abfrage, trägt die letzte Spalte den Namen der abgefragten Tabelle
4 spalten einer tabelle abfrage, werden nur 3 spalten geliefert und die letzte trägt den Namen der Tabelle
5 spalten einer tabelle abfrage, trägt die vorletzte den Namen der Tabelle und die letzte den der Datenbank und es werden nur 4 Spalten geliefert
6 spalten einer tabelle abfrage, kommt zum ergebnis mit 5 spalten eine spalte mit dem namen "def" hinzu
7 spalten einer tabelle abfrage, kommt folgende Windowsmeldung: "Microsoft Windows - CHI /FastCGI funktioniert nicht mehr"

Auf meinem Webserver werden alle Spalten korrekt ausgeliefert! Dort ist PHP Version 5.2.9 installiert. (Durch einen Eintrag in der php.ini wurde dort die mysqli-Funktionalität freigeschaltet.)

Gerade habe ich mir auch den Upgrade von xampp 1.7.2 auf 1.7.3 aufgespielt. Es hat am Problem aber nichts geändert.

Wenn ihr noch was wissen wollt, fragt mich! Ich hab ganz schön Zeitdruck und hoffe, dass ich das heute Nacht noch geklärt bekomme... Danke im Voraus!
OneWorld
 
Posts: 2
Joined: 23. February 2010 20:21

Re: mysqli liefert falsche Spaltennamen (aufm Webserver gehts)

Postby Altrea » 23. February 2010 21:36

Hilfreich wäre hier auf jeden Fall der original-Quellcode.
Also SQL-String + kommpletten mysqli-Teil.

Ich konnte bisher so ein Verhalten bei mysqli nicht beobachten.
Da wäre eine Reproduktion also schon hilfreich :)
We don't provide any support via personal channels like PM, email, Skype, TeamViewer!

It's like porn for programmers 8)
User avatar
Altrea
AF Moderator
 
Posts: 11926
Joined: 17. August 2009 13:05
XAMPP version: several
Operating System: Windows 11 Pro x64

Re: mysqli liefert falsche Spaltennamen (aufm Webserver gehts)

Postby OneWorld » 23. February 2010 22:42

Danke für die schnelle Antwort! Ich hab den Übeltäter gefunden. Es ist der PHP Debugger in meinem Zend Studio 7.0 und nicht xampp! Er hatte bei mir den lokalen Server gespielt und dabei Debugging erledigt. Leider interpretiert er scheinbar nicht die neue mysqli funktion richtig. Wenn ich in meinem Browser das Script ausführe läuft es, da dort xampp interpretiert.

Das ist übrigens der Code:

Code: Select all
<?php
        $connection = new mysqli('localhost', 'root', '', 'db160775_5' );
       
         if( !$result = $connection->query( 'SELECT * FROM posts' ) )
       {
      trigger_error('Error executing and caching query: '.$connection->error, E_USER_ERROR);
   }
   else
   {   
      var_dump( $result->fetch_array(MYSQLI_ASSOC) );   
   }      
?>


Und hier die Ausgabe:

Code: Select all
X-Powered-By: PHP/5.3.0 ZendServer/4.0
Content-type: text/html

<br />
<b>Warning</b>:  mysqli::mysqli() [<a href='mysqli.mysqli'>mysqli.mysqli</a>]: Headers and client library minor version mismatch. Headers:50135 Library:50018 in <b>D:\xampp\htdocs\zend_workspace\coreFramework\coreFramework\archive\mysqli-test.php</b> on line <b>2</b><br />
array(5) {
  ["post_id"]=>
  string(3) "270"
  ["thema_id"]=>
  string(3) "108"
  ["posts"]=>
  string(9) "rzrrtrttr"
  ["db160775_5"]=>
  string(19) "2009-11-23 02:26:59"
  ["def"]=>
  string(19) "2009-11-23 02:26:59"
}


Vielleicht kann mir jemand helfen mein Zend Studio richtig einzustellen?

Diese Einstellungen habe ich gerade unter Run > Run configurations > Debugger Location:
    PHP Executable gewählt
    PHP Debugger: Zend Debugger
    PHP Executable: PHP 5.3.0 (CGI)
(Rest ist unverändert)
OneWorld
 
Posts: 2
Joined: 23. February 2010 20:21


Return to PHP

Who is online

Users browsing this forum: No registered users and 15 guests