Ik ben op het moment mijn hele website om het zetten naar een met een mysql database als back-end.
Toen ik nog alleen php met include bestanden gebruikte parste ik mijn html op smilies door de pagina's in een $content string op te slaan of in te lezen. Dan parste ik deze met de volgende php code:
Nu ik mijn website om aan het zetten ben naar een mysql database (met de daarbij behorende mysql query's en array's) krijg ik problemen.
Ik gebruik de volgende code om de frontpage van mijn website te genereren:
Op deze manier wordt natuurlijk niet mijn $result geparsed op smilies. Dus ik paste de php code zo aan dat hij $result ging doorzoeken op de teken combinaties om deze te vervangen door smilies. Maar zodra hij de string doorzoekt draait hij om de een of andere reden al mijn $row's in de array de nek om en gaat mijn php code over zijn nek omdat hij de $row's niet meer vindt (ik had hem zo aangepast dat hij de array alleen deed doorzoeken en aanpassen, niet echo'en).
Ik moet dus iets doen met de code om ervoor te zorgen dat hij bijvoorbeeld alleen de huidige $row[content] parsed op smilies en dan echo'ed. En dan de volgende tot hij alle $row[content] heeft gehad. Alleen heb ik geen flauw idee hoe ik dit moet doen.
Toen ik nog alleen php met include bestanden gebruikte parste ik mijn html op smilies door de pagina's in een $content string op te slaan of in te lezen. Dan parste ik deze met de volgende php code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
| <? //This php code deals with the replacement of tekst smilies into the html code //to display the corresponding smilie (or smilies). //Remove slashes from content string stripslashes ($content); //Define smilies $search = array( ":D", //1 ":+", //2 ":?", //3 ":'(", //4 ">:)", //5 "|:(", //6 ":(", //7 "O-)", //8 ":9~", //9 ":7", //10 "(8>", //11 ":{", //12 ":*", //13 ":P", //14 ":r", //15 "}:O", //16 ":o", //17 ";(", //18 "*D", //19 ":X", //20 ":Z", //21 ":z", //22 ":)", //23 ":Y)", //24 ";)", //25 ":O", //26 ":9", //27 "B-)", //28 "8-)"); //29 //Define images $replace = array( "[img]\"$site/$path_smilies/biggrin.gif\"[/img]", //1 "[img]\"$site/$path_smilies/clown.gif\"[/img]", //2 "[img]\"$site/$path_smilies/confused.gif\"[/img]", //3 "[img]\"$site/$path_smilies/cry.gif\"[/img]", //4 "[img]\"$site/$path_smilies/devil.gif\"[/img]", //5 "[img]\"$site/$path_smilies/frusty.gif\"[/img]", //6 "[img]\"$site/$path_smilies/frown.gif\"[/img]", //7 "[img]\"$site/$path_smilies/hypocrite.gif\"[/img]", //8 "[img]\"$site/$path_smilies/kwijl.gif\"[/img]", //9 "[img]\"$site/$path_smilies/loveit.gif\"[/img]", //10 "[img]\"$site/$path_smilies/michel.gif\"[/img]", //11 "[img]\"$site/$path_smilies/nosmile.gif\"[/img]", //12 "[img]\"$site/$path_smilies/puh.gif\"[/img]", //13 "[img]\"$site/$path_smilies/puh2.gif\"[/img]", //14 "[img]\"$site/$path_smilies/pukey.gif\"[/img]", //15 "[img]\"$site/$path_smilies/rc5.gif\"[/img]", //16 "[img]\"$site/$path_smilies/redface.gif\"[/img]", //17 "[img]\"$site/$path_smilies/sadley.gif\"[/img]", //18 "[img]\"$site/$path_smilies/shiny.gif\"[/img]", //19 "[img]\"$site/$path_smilies/shutup.gif\"[/img]", //20 "[img]\"$site/$path_smilies/sleepey.gif\"[/img]", //21 "[img]\"$site/$path_smilies/sleephappy.gif\"[/img]", //22 "[img]\"$site/$path_smilies/smile.gif\"[/img]", //23 "[img]\"$site/$path_smilies/vork.gif\"[/img]", //24 "[img]\"$site/$path_smilies/wink.gif\"[/img]", //25 "[img]\"$site/$path_smilies/yawnee.gif\"[/img]", //26 "[img]\"$site/$path_smilies/yummie.gif\"[/img]", //27 "[img]\"$site/$path_smilies/shadey.gif\"[/img]", //28 "[img]\"$site/$path_smilies/coool.gif\"[/img]"); //29 //Remove slashes from the replace array stripslashes($replace); //Search for the smilies to replace for($i = 0; $i < count($search);$i++){ //Replace the tekst smilies with the images $content = str_replace($search[$i],$replace[$i],$content); } //Display the content with the replaced smilies echo $content ?> |
Nu ik mijn website om aan het zetten ben naar een mysql database (met de daarbij behorende mysql query's en array's) krijg ik problemen.
Ik gebruik de volgende code om de frontpage van mijn website te genereren:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| <? //connect to MySQL server $connect = mysql_connect("localhost"); //select the database mysql_select_db("mydb", $connect); // SQL query $query = "SELECT fid,date,time,title,user,content FROM frontpage WHERE fid like '200202' ORDER BY date DESC"; $result = mysql_query($query) or die(mysql_error()); //Loop till all rows are displayed while ($row = mysql_fetch_array($result)) { echo "<p>$line", "\n"; echo "$row[title]", "\n"; echo "<div class=\"date\">$row[date]</div></p>", "\n"; echo "\n"; echo "$row[content]", "\n"; echo "$row[user]", "\n"; } ?> |
Op deze manier wordt natuurlijk niet mijn $result geparsed op smilies. Dus ik paste de php code zo aan dat hij $result ging doorzoeken op de teken combinaties om deze te vervangen door smilies. Maar zodra hij de string doorzoekt draait hij om de een of andere reden al mijn $row's in de array de nek om en gaat mijn php code over zijn nek omdat hij de $row's niet meer vindt (ik had hem zo aangepast dat hij de array alleen deed doorzoeken en aanpassen, niet echo'en).
Ik moet dus iets doen met de code om ervoor te zorgen dat hij bijvoorbeeld alleen de huidige $row[content] parsed op smilies en dan echo'ed. En dan de volgende tot hij alle $row[content] heeft gehad. Alleen heb ik geen flauw idee hoe ik dit moet doen.
<HunterPro> HAL: is Excru intelligent?
<HAL> HunterPro: Hijs weer lekker intelligent.
* Excru aait HAL