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


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

Re: Problem mit PDO

From Markus Grob <snoopy@ilnet.ch>
Newsgroups de.comp.lang.php
Subject Re: Problem mit PDO
Date 2015-11-14 23:41 +0100
Organization A noiseless patient Spider
Message-ID <n28d72$dge$1@dont-email.me> (permalink)
References <n283h2$e0d$1@news.albasani.net> <56479A45.3090901@arnowelzel.de> <n288g5$n4i$1@news.albasani.net>

Show all headers | View raw


Peter Müller schrieb:
> Arno Welzel schrieb am 14.11.2015 um 21:32:
>> Peter Müller schrieb am 2015-11-14 um 20:54:
>>
>>> Hallo,
>>>
>>> ich arbeite mich gerade mit PDO ein und komme an einem Punkt nicht
>>> weiter, ich hoffe ihr könnt mir helfen. Es geht um die Umsetzung dieser
>>> SQL-Abfrage:
>>> mysql> SELECT min(jahr) as minjahr
>>>      -> FROM wiealt
>>>      -> WHERE baldwin > 100000;
>>> +---------+
>>> | minjahr |
>>> +---------+
>>> |    1950 |
>>> +---------+
>>> 1 row in set (0.00 sec)
>>>
>>> Mein (reduziertes) PDO-Codeschnipsel sieht so aus:
>>>
>>> $firma = 'baldwin';
>>> $nummer = 100000;
>>> $query2 = "
>>> 	SELECT min(jahr) as minjahr
>>> 	FROM wiealt
>>> 	WHERE :firma > :nummer";
>>
>> Wieso nicht in einer Zeile? Eine Aufteilung auf mehrere Zeilen sollte
>> auch eher so aussehen:
>>
>> $query2 = "SELECT min(jahr) as minjahr ".
>>            "FROM wiealt ".
>>            "WHERE :firma > :nummer";
>
> Ist nur übersichtlicher. Es erscheint auch keine notice deswegen, aber
> ich kann's natürlich gerne mal mit einer einzeiligen query testen.

Er meinte sicher, dass Du das SELECT auf die gleiche Zeile schreiben 
sollst wie $query2


>>> Die unerwartete Ausgabe:
>>> array(1) { [0]=> object(stdClass)#86 (1) { ["minjahr"]=> NULL } }
>>> Notice: Undefined variable: min in
>>> /var/www/html/merz-klaviere.de/service/wie_alt.php on line 180
>>
>> Welche Zeile ist 180 in dem obigen Beispiel?

Das ist sicher die Zeile mit dem SELECT, richtig? Irgendwie kommt das 
pdo mit Deinem min nicht klar. Da ich pdo nicht anwende, weiss ich 
nicht, ob Du diese Abfrage hier noch anpassen musst.


> Es geht nicht um die Notice: Undefined variable (...) , die tritt nur
> auf durch die Reduzierung des Codes. Es geht um das falsche SQL-Ergebnis
> 'NULL' statt '1950', das ist mir nicht klar. var_dump des Original-Codes
> liefert
> array(1) { [0]=> object(stdClass)#86 (1) { ["maxjahr"]=> string(4)
> "2100" } } array(1) { [0]=> object(stdClass)#87 (1) { ["minjahr"]=> NULL } }
>
> , das sind beides die Extremwerte der Tabelle.

Doch, das sind beides wichtige Werte. minjahr ist NULL, weil min als 
nicht definierte Variable angeschaut wird, anstatt als SQL-Funktion. 
Würdest Du hier das min weglassen und umstellen auf:

SELECT jahr....
WHERE jahr = '1950'

Würde das funktionieren, doch es ist nicht Ziel des Codes :-)

Wie erwähnt, ich kenne pdo nicht, doch kläre ab, ob das Ganze noch 
angepasst werden muss mit SELECT min(x)

Gruss, Markus

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