Waar zit het probleem ?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Signs

Signs

09/03/2007 12:41:00
Quote Anchor link
Beste mensen,

Ik heb een probleem met mijn website.
Het is beter uit te leggen als jullie het probleem zien.

http://www.spelletjesplaats.com (geen SPAM)

1) Bij alle spellen loopt de URL via /spellen/spelnaam.html
2) Bij "Meest gespeeld" en "nieuwste spellen" gaat deze via
index.php?=game.php&id= blabla

Als ik een spel die via nummer 1 aanklik, dan opent zich een nieuw venster en de iframe blijft wit.

Als ik een spel die via nummer 2 loopt aanklikt, dan gebeurt er helemaal niets. Het enige wat veranderd is de url in de adresbalk van IE.

Het lijkt erop dat de vorige eigenaar de urls SEO vriendelijk wilde maken. Ik heb hem benaderd hierover maar hij gebruikte geen .htaccess dingen of iets dergelijks.

Overigens werkte de website op zijn hoster perfect

Of het nu via 1 of 2 loopt maakt mij niets uit, als het probleem maar opgelost wordt.


Wat kan het probleem zijn ?

Ik moet er wel bij vertellen dat ik deze website onlangs heb overgenomen. Ik heb een DirectAdmin backup zip bestand ontvangen en deze geupped naar mijn eigen account.

Hopelijk zijn jullie mij bereid te helpen. Mochten jullie stukken code willen zien dan regel ik dat

Met vriendelijke groet

Kevin
 
PHP hulp

PHP hulp

20/11/2024 10:35:34
 
Joren de Wit

Joren de Wit

09/03/2007 12:56:00
Quote Anchor link
Stukken code zijn natuurlijk altijd handig. Maar natuurlijk wel alleen de relevante stukken ;)
 
Signs

Signs

09/03/2007 13:03:00
Quote Anchor link
hehe uiteraard

Code van config.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
ob_start();

include "connect.php";

$select = ("SELECT * FROM game_config"); // Selecteren uit een tabel
$query = mysql_query($select);
while($list = mysql_fetch_object($query)){
$webmaster_email = "$list->email_webmaster";
$website_naam = "$list->site_naam";
$website_adres = "$list->site_adres";

$screen = "$list->screenshot";
$preloader1 = "$list->preloader";
$berichtenbalk1 = "$list->berichtenbalk";
$poll1 = "$list->poll";
$maxgames1 = "$list->maxgames";
$titelbalk1 = "$list->titelbalk";

$login = "$list->gebruiker";
$pw = "$list->wachtwoord";
}


?>


Code van Game.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php include"header.inc.php";?>
<td valign="top" class="links">

<?php
$select
= ("SELECT * FROM game_games WHERE id ='$id' limit 1"); // Selecteren uit een tabel
$query = mysql_query($select);
$aantal = mysql_num_rows($query);
if ( $aantal == "0" )
{

echo "Deze game id bestaat niet.";
}

else
{
while($list = mysql_fetch_object($query)){
echo "<div class='kop'>$list->name</div>";

?>


<table border="0" cellpadding="0" cellspacing="0" align="center" class="boxmainm">
<tr>
<td class="boxmainb"></td>
</tr>
<tr>
<td align="center" valign="top">
<a href="http://www.beltonenplaza.com/"><b>Beltonen</b></a><br />
<script type="text/javascript"><!--
google_ad_client = "pub-6658887532390474";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "F0C581";
google_color_bg = "F0C581";
google_color_link = "412800";
google_color_url = "412800";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

<?
echo "<br />
<center><iframe src='laden.php?id=$list->id' name='game' align='middle' width='$list->width' height='$list->height' marginheight='0' marginwidth='0' frameborder='0' scrolling='no' style='background-color: red; '></iframe></center>"
;
?>


<script type="text/javascript"><!--
google_ad_client = "pub-6658887532390474";
google_ad_width = 728;
google_ad_height = 15;
google_ad_format = "728x15_0ads_al_s";
google_ad_channel ="";
google_color_border = "F0C581";
google_color_bg = "F0C581";
google_color_link = "412800";
google_color_url = "412800";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

</td>
</tr>
<tr>
<td class="boxmaino"></td>
</tr>
</table>

<div class='kop'>Statistieken</div>
<table border="0" cellpadding="0" cellspacing="0" align="center" class="boxmainm">
<tr>
<td class="boxmainb"></td>
</tr>
<tr>
<td align="center" valign="top">

<?

echo "Deze game is totaal <b>$list->views</b> keer gespeeld.<br />";
$cijfer = "$list->cijfer1";
$stem = "$list->stemmen";
$stem1=$cijfer/$stem;
$stem2=$stem1*10;

if ( $cijfer == "0" )
{

echo "Er is nog niet gestemd op deze game.<br />";
}

else
{
echo "Deze game heeft een rating van <b>".round($stem2,0)."</b> op 10.<br />";
}


$game1 = "game_$list->id";

$game1=$_COOKIE["$game1"];
if ( $send == "2" )
{

echo "Er is een bericht verstuurd naar de webmaster, met mededeling dat deze game niet werk!";
}

else
{
echo "Klik <a href='?p=game.php&amp;id=$list->id&amp;naam=$list->name&amp;send=2'>hier</a> als deze game niet werkt.<br />";
}


if ( $game1 == "1" )
{

echo "U hebt al gestemd op deze game.";
}


else
{
if ( $send == "1" )
{


echo "U stem is succesvol toegevoegd";
}

else
{
echo "<center><br /><form action='?p=game.php&amp;id=$id&amp;send=1' method='post'>1 <input type='radio' value='1' name='keuze' />  2 <input type='radio' value='2' name='keuze' />  3 <input type='radio' value='3' name='keuze' />  4 <input type='radio' value='4' name='keuze' />  5 <input type='radio' value='5' name='keuze' />  6 <input type='radio' value='6' name='keuze' />  7 <input type='radio' value='7' name='keuze' />  8 <input type='radio' value='8' name='keuze' />  9 <input type='radio' value='9' name='keuze' />  10 <input type='radio' value='10' name='keuze' /> <input type='submit' value='Stem' /></form></center>";
}
}

}
}

?>



</td>
</tr>
<tr>
<td class="boxmaino"></td>
</tr>
</table>

<div class='kop'>Advertenties</div>
<table border="0" cellpadding="0" cellspacing="0" align="center" class="boxmainm">
<tr>
<td class="boxmainb"></td>
</tr>
<tr>
<td align="center" valign="top">
<?php include "banner_routatie.php"; ?>
</td>
</tr>
<tr>
<td class="boxmaino"></td>
</tr>
</table>
</td>

<?php include"footer.inc.php";?>


Code van laden.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
ob_start();
?>

<body bgcolor='EBEBEB'>
<?php
include "config.php";
$select = ("SELECT * FROM game_games WHERE id ='$id' limit 1"); // Selecteren uit een tabel
$query = mysql_query($select);
$aantal = mysql_num_rows($query);
while($list = mysql_fetch_object($query)){
$url = "$list->url";

if ( $preloader1 == "Aan" )
{

?>


<div align="center">
<script>
getal=0;
url='<?php echo "$list->url"; ?>'; // hier de url welke geopend moet worden
function load()
{
if(getal==100)
{
window.location=url;
}
else {
getal+=1;
tabel.width=getal;
text.innerHTML=getal+"%";
setTimeout("load()","10");
}
}
setTimeout("load()","10");
</script>
Loading...
<div id=text></div>
<table cellpadding=0 cellspacing=0 width=102 style="border:1 solid black">
<tr><td align=left>
<table cellpadding=0 cellspacing=0 bgcolor=#0000CC height=11 id=tabel>
<tr><td></tr></td></table></tr></td></table>
</div><br><br>
<?php
$select
= ("SELECT * FROM game_adverteer WHERE plaats ='preloader'"); // Selecteren uit een tabel
$query = mysql_query($select);
$aantal = mysql_num_rows($query);
while($list = mysql_fetch_object($query)){
echo "<center><a href='uitklik.php?id=$list->id' target='blank'><img src='$list->banner' border='0'></a>";
}

}

else
{
header ("Location: $url");
}
}

?>
 
Joren de Wit

Joren de Wit

09/03/2007 13:07:00
Quote Anchor link
Zowel op game.php als laden.php gebruik je in je eerste query de variabele $id. Maar deze variabele heb je nog nergens gedeclareerd?

Hoogstwaarschijnlijk werkte de scripts wel bij de vorige host als daar register_globals aan stond. De GET variabele 'id' kan dan gewoon met $id uitgelezen worden. Op jouw server staat dat waarschijnlijk uit en zul je $_GET['id'] moeten gebruiken om die variabele uit te lezen.
 
Jacco Engel

Jacco Engel

09/03/2007 13:18:00
Quote Anchor link
Het makkelijkste is .htaccess aanmaken met de code :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
register_globals on


om te testen of dit het probleem oplost
 
Frank -

Frank -

09/03/2007 13:18:00
Quote Anchor link
Zet de volgende regels bovenaan de scripts en ga dan debuggen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL | E_STRICT);

// rest van het script
?>


Verder ontbreekt iedere vorm van foutafhandeling, de basis van een goed script.
 
Signs

Signs

09/03/2007 13:21:00
Quote Anchor link
je bent geweldig! Ik ben geen php /sql expert...dus het is voor mij wat lastig.

Ik heb nu een .htaccess bestand gemaakt met de code
php_flag register_globals on

nu werk mijn site wel! DANK!!!
 
Joren de Wit

Joren de Wit

09/03/2007 13:26:00
Quote Anchor link
Ja en dit is dus de minst slimme actie die je had kunnen ondernemen! Register_globals staat standaard niet voor niets uit omdat het bij niet goed gescripte scripts een potentieel beveiligingslek oplevert.

Kortom, lekker met je handjes van die functie afblijven en je script op een goede manier scripten.
 
Frank -

Frank -

09/03/2007 13:27:00
Quote Anchor link
Quote:
Ik heb nu een .htaccess bestand gemaakt met de code
php_flag register_globals on
En dat noem jij een oplossing? Hiermee gooi je je eigen ruiten in, het begrip veiligheid heb je nu met een grote boog de deur uitgegooid. Waarom zou dit toch zijn uitgezet? Google daar maar eens op en probeer dan nog eens vrolijk te kijken...

Ga netjes scripten, dat levert veel betere resultaten op.
 
Signs

Signs

09/03/2007 13:37:00
Quote Anchor link
oke dan...mm misschien inderdaad niet zo'n slimme actie.

Ik ben een totale newbie op php/sql gebied, dit leek mij wel een makkelijke oplossing..

Blanche, in je topic vermelde je dat ik $_GET moet invoeren.
Heb je een stuk code als voorbeeld waar ik dit moet invoeren ?
 
Jurgen assaasas

Jurgen assaasas

09/03/2007 13:37:00
Quote Anchor link
gewoon in replace all met een simpele editor $id veranderen in $_GET['id']
 
Joren de Wit

Joren de Wit

09/03/2007 13:49:00
Quote Anchor link
Ja en dan natuurlijk ook nog wel de nodige controles op $_GET['id'] invoeren. Een id zal numeriek zijn, dus controleer met bijvoorbeeld ctype_digit of $_GET['id'] ook daadwerkelijk uniek is.

Pas als je zeker weet dat het id aan alle eisen voldoet ga je hem gebruiken in een query, niet eerder. Dit ook weer om bijvoorbeeld sql injectie te voorkomen.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.