Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.php > #3556

Re: Problem mit PDO

From Thomas 'PointedEars' Lahn <PointedEars@web.de>
Newsgroups de.comp.lang.php
Subject Re: Problem mit PDO
Date 2015-11-15 15:30 +0100
Organization PointedEars Software (PES)
Message-ID <2514085.4R5y6r8EeQ@PointedEars.de> (permalink)
References (2 earlier) <n288g5$n4i$1@news.albasani.net> <n28d72$dge$1@dont-email.me> <n29j1k$705$1@news.albasani.net> <n29s9o$ok1$1@news.albasani.net> <n2a1ql$3a3$1@news.albasani.net>

Show all headers | View raw


Peter Müller wrote:

> Thomas Mlynarczyk schrieb am 15.11.2015 um 13:03:
>> On 15/11/15 10:25, Peter Müller wrote:
>>> INSERT INTO `wiealt2` (`id`, `jahr`, `baldwin`) VALUES [...]
>>>
>>> $firma = 'baldwin';
>>> $nummer = '15';
>> 
>>> $query2 = "SELECT min(jahr) as minjahr FROM wiealt2 WHERE :firma >
>>> :nummer";
>>> SELECT min(jahr) as minjahr FROM wiealt2 WHERE baldwin > 15;
>> 
>>> Der PHP-Code liefert also NULL, 1700, SQL liefert 1814,1815 auf dieselbe
>>> Abfrage.
>> 
>> Es ist eben nicht dieselbe Abfrage. In $query2 vergleichst Du den
>> *String* 'baldwin' mit der Zahl 15, in der Konsole den Wert der *Spalte*
>> `baldwin` mit der Zahl 15.
> 
> Das ist das, was ich übersehen hatte. Danke! Da die Arbeit mit den
> PDO-Klassen neu für mich ist, hatte ich noch nicht
> PDOStatement::bindColumn entdeckt. Das löst das Problem. Ich hatte die
> Spaltennamen wie Strings behandelt.

PDOStatement::bindColumn() tut nicht das, was Du anscheinend annimmst: Damit 
wird _nicht_ der Wert einer Variablen als *Name* einer Spalte in einem 
Prepared Statement verwendet.  

Stattdessen wird damit der Wert einer Variablen an den *Wert* eines *Feldes* 
eines *Ergebnisdatensatzes* gebunden, wenn man PDOStatement::fetch() oder 
PDOStatement::fetchAll() verwendet.

RTFM: <http://php.net/manual/en/pdostatement.bindcolumn.php>

Ausserdem schrieb ich bereits, dass Deine Datenbank wahrscheinlich falsch 
strukturiert ist, wenn Du variable Spaltennamen in Abfragen verwenden musst.

-- 
PointedEars
Zend Certified PHP Engineer
Twitter: @PointedEars2
Please do not cc me. / Bitte keine Kopien per E-Mail.

Back to de.comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-14 20:54 +0100
  Re: Problem mit PDO Arno Welzel <usenet@arnowelzel.de> - 2015-11-14 21:32 +0100
    Re: Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-14 22:19 +0100
      Re: Problem mit PDO Markus Grob <snoopy@ilnet.ch> - 2015-11-14 23:41 +0100
        Re: Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-15 10:25 +0100
          Re: Problem mit PDO Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2015-11-15 12:42 +0100
          Re: Problem mit PDO Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2015-11-15 13:03 +0100
            Re: Problem mit PDO Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-11-15 14:26 +0100
              Re: Problem mit PDO Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2015-11-15 16:32 +0100
            Re: Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-15 14:37 +0100
              Re: Problem mit PDO Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-11-15 15:30 +0100
                Re: Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-15 19:26 +0100
                Re: Problem mit PDO Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-11-15 21:10 +0100
          Re: Problem mit PDO Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-11-15 14:23 +0100
            Re: Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-15 14:39 +0100
      Re: Problem mit PDO Arno Welzel <usenet@arnowelzel.de> - 2015-11-16 08:43 +0100
        Re: Problem mit PDO Peter Müller <peter.mueller@c-major.de> - 2015-11-16 21:23 +0100
    Re: Problem mit PDO Thomas Mlynarczyk <thomas@mlynarczyk-webdesign.de> - 2015-11-15 13:09 +0100
      Re: Problem mit PDO Markus Grob <snoopy@ilnet.ch> - 2015-11-17 09:48 +0100
        Re: Problem mit PDO Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-11-17 20:13 +0100
          Re: Problem mit PDO Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2015-11-17 22:09 +0000
          Re: Problem mit PDO Markus Grob <snoopy@ilnet.ch> - 2015-11-20 21:59 +0100

csiph-web