12. august 2007 - 21:47
Der er
24 kommentarer og 1 løsning
select * from
Jeg prøver at hente alle poster fra mysql, den udskriver dog kun 1 post - hvordan kan det være? Kode: class Video { public $titel; function udskrivVideo() { echo "<p>".$this->titel." </p>"; } } $test_1 = new Video(); $test_2 = new sql(); $test_2->connect(); $test_2->q("SELECT * FROM navn"); $array = $test_2->a(); $test_1->titel = $array[1]; $test_2->free(); $test_2->close(); $test_1->udskrivVideo();
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
12. august 2007 - 21:59
#1
$test_1->titel = $array[1]; Prøv at udskriv: echo $array[2]; echo $array[3]; osv...
12. august 2007 - 22:03
#2
Den udskriver kun echo $array[1]; og echo $array[2]; De andre er blanke
13. august 2007 - 07:48
#3
Hvor mange rækker giver din SQL: SELECT * FROM navn i phpmyadmin?
13. august 2007 - 10:34
#4
Hvordan ser din funktion a() ud ??
13. august 2007 - 13:26
#5
Den giver 5 resultater i phpmyadmin. function a(){ $array = null; if($this->_activeQuery){ $array = mysql_fetch_array($this->_activeQuery, $this->_conn); } return $array; } Og funktionen ser sådan her ud:
13. august 2007 - 17:24
#6
Du skal bare skrive: while($array = $test_2->a()){ echo $array["fornavn"]."<br />"; } //mcardle
13. august 2007 - 17:25
#7
Hvis din række hedder fornavn, naturligvis. //mcardle
13. august 2007 - 19:51
#8
Hvor skal jeg skrive det henne? Og skal jeg erstatte det for noget der allerede står?
13. august 2007 - 20:20
#9
I stedet for dette: $array = $test_2->a(); $test_1->titel = $array[1];
13. august 2007 - 20:48
#10
Præcis jakobdo. Desuden skal du ikke bruge $test_2->free(); Den er til at frigøre ram, hvis det er et stort kald. Så dit array ikke bruger for mange ram på serveren. //mcardle
13. august 2007 - 20:54
#11
free(); er vel til at release result fra mysql_query()
13. august 2007 - 20:58
#12
13. august 2007 - 21:10
#13
Yes det fungerer! :) Er det iorden mcardle får 50 point og jakobdo får 10 point for sit input?
13. august 2007 - 21:12
#14
kan jeg ikke få det udskrevet her også: class Video { public $titel; function udskrivVideo() { echo "<p>".$this->titel." </p>"; } } eller er det umuligt?
13. august 2007 - 21:17
#15
Du skal bare skrive: class Video { public $titel; function udskrivVideo() { return "<p>".$this->titel." </p>"; } } $test_1 = new Video(); echo $test_1->udskrivVideo(); //mcardle
13. august 2007 - 21:18
#16
Matz <- Det er fint... Her er mit svar. //mcardle
13. august 2007 - 21:51
#17
Den udskriver intet: $test_1 = new Video(); echo $test_1->udskrivVideo(); $test_2 = new sql(); $test_2->connect(); $test_2->q("SELECT * FROM navn"); while($array = $test_2->a()){ echo $array["fornavn"]."<br />"; echo $array["efternavn"]."<br /><br />"; } $test_2->close(); $test_1->udskrivVideo();
13. august 2007 - 21:52
#18
ups koden er her: $test_1 = new Video(); $test_2 = new sql(); $test_2->connect(); $test_2->q("SELECT * FROM navn"); while($array = $test_2->a()){ echo $array["fornavn"]."<br />"; echo $array["efternavn"]."<br /><br />"; } $test_2->close(); echo $test_1->udskrivVideo();
13. august 2007 - 22:01
#19
Hvad er dine felt navne i tabellen NAVN?
13. august 2007 - 22:03
#20
Altså det jeg mente var at den intet udskriver med den nye kode: class Video { public $titel; function udskrivVideo() { return "<p>".$this->titel." </p>"; } } $test_1 = new Video(); echo $test_1->udskrivVideo(); Jeg har 3 felter i navn. Den her virker helt fint: while($array = $test_2->a()){ echo $array["fornavn"]."<br />"; }
13. august 2007 - 22:07
#21
Men din video klasse ser slet ikke færdi ud?
13. august 2007 - 22:11
#22
kan du forklare nærmere hvad der mangler?
13. august 2007 - 22:29
#23
Det er ligemeget med mit sidste spg. Lig et svar jakobdo
14. august 2007 - 07:49
#24
Du får et svar!
31. oktober 2007 - 11:15
#25
Takker for point.
Vi tilbyder markedets bedste kurser inden for webudvikling