WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   php, mysql arrays! (https://www.wn.se/forum/showthread.php?t=1038791)

BjörnJ 2009-10-28 09:00

Får du något felmeddelande, eller tycks allt fungera som det ska bortsett från att du inte får highlight som du tänkt?

BjörnJ 2009-10-28 09:05

Kommentera bort tilldelningen efter foreach och lägg istället dit:
PHP-kod:

echo $row[0]."<br />\n"

Edit:
Eller sätt dit måsvingar, och ha med både echo och tilldelning.

Magnus_A 2009-10-28 09:07

Du kan få ut allt i en array om du använder dig av det inbyggda stödet för PDO och metoden fetchall(), se vidare http://www.php.net/manual/en/pdostatement.fetchall.php
Inte bra med allför stora resultat, men jäkligt praktiskt att slippa loopa ibland och plocka direkt ur matrisen.

youheardit 2009-10-28 09:36

Citat:

Ursprungligen postat av Magnus_A (Inlägg 20328437)
Du kan få ut allt i en array om du använder dig av det inbyggda stödet för PDO och metoden fetchall(), se vidare http://www.php.net/manual/en/pdostatement.fetchall.php
Inte bra med allför stora resultat, men jäkligt praktiskt att slippa loopa ibland och plocka direkt ur matrisen.

Så här antar jag? men iallafall så får jag error när jag kör detta:
Kod:

Fatal error: Call to a member function prepare() on a non-object in /home/web75761/domains/cubemedia.se/public_html/ramek/personal/calendar.php on line 16
PHP-kod:

$sth $dbh->prepare('SELECT date FROM events GROUP BY date');
$sth->execute();

/* Fetch all of the remaining rows in the result set */
$result $sth->fetchAll();
  
$calendar->highlighted_dates $result


Magnus_A 2009-10-28 09:43

Du måste nog tala om vilken databas, host, användare och lösenord du tänkte använda för att skapa pdo-objektet $dhb i ditt fall ovan. Annars kommer du inte långt.
Läs den fina manualen här: http://www.php.net/manual/en/pdo.connections.php

youheardit 2009-10-28 09:48

Citat:

Ursprungligen postat av Magnus_A (Inlägg 20328446)
Du måste nog tala om vilken databas, host, användare och lösenord du tänkte använda för att skapa pdo-objektet $dhb i ditt fall ovan. Annars kommer du inte långt.
Läs den fina manualen här: http://www.php.net/manual/en/pdo.connections.php

Tack!
Testade nyss och jag får inget error iallafall men den visar fortfarande inte highlighted!
PHP-kod:

$user "xxx";
$pass "xxx";
$dbh = new PDO('mysql:host=xxx;dbname=xxx'$user$pass);


$sth $dbh->prepare('SELECT date FROM events GROUP BY date');
$sth->execute();

/* Fetch all of the remaining rows in the result set */
$result $sth->fetchAll();
  
$calendar->highlighted_dates $result


BjörnJ 2009-10-28 09:58

PHP-kod:

print_r($calendar->highlighted_dates); 


youheardit 2009-10-28 10:00

Citat:

Ursprungligen postat av BjörnJ (Inlägg 20328453)
PHP-kod:

print_r($calendar->highlighted_dates); 


Körde detta och fick utskrivet: Array ( [0] => Array ( [date] => 2009-10-28 [0] => 2009-10-28 ) [1] => Array ( [date] => 2009-10-29 [0] => 2009-10-29 ) )

Men det ska väll vara i form av:
array(
'2009-10-28',
'2009-10-29';
);

eller är jag fel på det?

hnn 2009-10-28 10:02

date räknas som en funktion i MySQL. Korrekt kod:
PHP-kod:

$res mysql_query('SELECT `date` FROM `events` GROUP BY `date`');

while(
$row mysql_fetch_assoc($res))
  
$calendar->highlighted_dates[]=$row['date']; 


BjörnJ 2009-10-28 10:05

PHP-kod:

$result $sth->fetchAll(PDO::FETCH_COLUMN0); 

Men du behöver inte mellanlagra i $result:
PHP-kod:

$calendar->highlighted_dates=$sth->fetchAll(PDO::FETCH_COLUMN0); 



Alla tider är GMT +2. Klockan är nu 11:05.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson