Admin script geeft witte pagina

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

DJ Lars

DJ Lars

12/09/2007 13:57:00
Quote Anchor link
Ik ben een admin script voor mijn gastenboek aan het maken, dit script geeft echter een witte pagina wanneer ik het aanroep. Ik ben niet zo'n held in PHP en kan de fout niet vinden, wellicht ziet iemand van jullie het?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
ini_set("display_errors","on");
error_reporting(E_ALL);
mysql_connect ('***','***','***');
mysql_select_db ('***');
?>

<html>
<head>
<title>Gastenboek</title>
</head>
<body><center>
<table bgcolor="#EEEEEE"><tr>
<td><b><font color="#666666">Gastenboek Admin</font></b></td>
</tr></table><br>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
    
        //bericht edit-form
        if (isset($editid)) {
        $sql = "SELECT * FROM gastenboek  WHERE bericht_id=".$_GET['editid'].";
        $resultaat = mysql_query($sql) or die ("
query mislukt");
        $rij = mysql_fetch_object($resultaat);
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);?>

<table><form method="post" action="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? $_SERVER['PHP_SELF']; ?>
" name="gastenboek"><input type="hidden" name="editid" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo ".$_GET['editid']."; ?>
">
<tr><td><b><font color="#666666">Reactie toevoegen</font></b></td></tr>
<tr><td width="150">Naam:</td><td width="250"><input type="text" name="naam" size="35" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$naam"; ?>
"></td></tr>
<tr><td width="150">Email:</td><td width="250"><input type="text" name="email" size="35" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$email"; ?>
"></td></tr>
<tr><td valign="top">Reactie:</td><td><textarea name="bericht" cols="34" rows="5">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$bericht"; ?>
</textarea></td></tr>
<tr><td></td><td><input type="submit" name="submit" value="wijzigen"></td></tr></form></table><br>
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
<? }
        
        //bericht deleten
        if (isset($deleteid)) {
        mysql_query ("DELETE FROM gastenboek_berichten WHERE bericht_id=".$_GET['deleteid'].""); }
        
        //bericht editen
        if ($_POST['submit']) {
        mysql_query("UPDATE gastenboek_berichten SET naam='".$_POST[naam]."',email='".$_POST[email]."',bericht='".$_POST[bericht]."' WHERE bericht_id = '".$editid."'") or die(mysql_error());
        echo "<script>location.href='".$_SERVER['PHP_SELF'].;"'</script>";}    
        
        //alle berichten weergeven
        else {
         $sql = "SELECT * FROM gastenboek_berichten ORDER BY datumtijd DESC";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        while ($rij = mysql_fetch_object($resultaat)){
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);
        echo "<table><tr><td width=60><a href=".$_SERVER['PHP_SELF']."?editid=".$rij->bericht_id."><img src=\"smilies/edit.png\" border=\"0\"></a><a href=".$_SERVER['PHP_SELF'].?deleteid=".$rij->bericht_id."><img src=\"smilies/del.png\" border=\"0\"></a></td><td width=120><a href=mailto:".$email."><b>".$naam."</b></a><br><font size=1>";
        echo"</font></td><td width=220>".$bericht."</td></tr></table><br>";
    }
      }

?>

</center></body>
</html>
 
PHP hulp

PHP hulp

28/03/2024 20:52:02
 
- wes  -

- wes -

12/09/2007 14:03:00
 
DJ Lars

DJ Lars

12/09/2007 14:16:00
Quote Anchor link
Goed, ik heb d.m.v. de eerste link het e.e.a. aangepast, de 2e optie stond al aan.

De kleuren die aan de code worden gegeven in de PHP editor zien er nu wel wat logischer uit, maar het werkt nog niet, dit is de aangepaste versie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
ini_set("display_errors","on");
error_reporting(E_ALL);
mysql_connect ('***','***','***');
mysql_select_db ('***');
?>

<html>
<head>
<title>Gastenboek</title>
</head>
<body><center>
<table bgcolor="#EEEEEE"><tr>
<td><b><font color="#666666">Gastenboek Admin</font></b></td>
</tr></table><br>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
    
        //bericht edit-form
        if (isset($_GET['editid'])) {
        $sql = "SELECT * FROM gastenboek  WHERE bericht_id='" . $_GET['editid'] . "'";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        $rij = mysql_fetch_object($resultaat);
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);?>

<table><form method="post" action="admin.php" name="gastenboek"><input type="hidden" name="editid" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo ".$_GET['editid']."; ?>
">
<tr><td><b><font color="#666666">Reactie toevoegen</font></b></td></tr>
<tr><td width="150">Naam:</td><td width="250"><input type="text" name="naam" size="35" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$naam"; ?>
"></td></tr>
<tr><td width="150">Email:</td><td width="250"><input type="text" name="email" size="35" value="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$email"; ?>
"></td></tr>
<tr><td valign="top">Reactie:</td><td><textarea name="bericht" cols="34" rows="5">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$bericht"; ?>
</textarea></td></tr>
<tr><td></td><td><input type="submit" name="submit" value="wijzigen"></td></tr></form></table><br>
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
<? }
        
        //bericht deleten
        if (isset($_GET['deleteid'])) {
        mysql_query ("DELETE FROM gastenboek_berichten WHERE bericht_id='" . $_GET['deleteid'] . "'");
        }

        
        //bericht editen
        if (isset($_POST['submit'])) {
        mysql_query("UPDATE gastenboek_berichten SET naam='".$_POST[naam]."',email='".$_POST[email]."',bericht='".$_POST[bericht]."' WHERE bericht_id = '".$_GET['editid']."'") or die(mysql_error());
        echo "<script>location.href='admin.php'</script>";}    
        
        //alle berichten weergeven
        else {
         $sql = "SELECT * FROM gastenboek_berichten ORDER BY datumtijd DESC";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        while ($rij = mysql_fetch_object($resultaat)){
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);
        echo "<table><tr><td width=60><a href=\"admin.php?editid=".$rij->bericht_id."\"><img src=\"smilies/edit.png\" border=\"0\"></a><a href="admin.php?deleteid=".$rij->bericht_id."><img src=\"smilies/del.png\" border=\"0\"></a></td><td width=120><a href=mailto:".$email."><b>".$naam."</b></a><br><font size=1>";
        echo"</font></td><td width=220>".$bericht."</td></tr></table><br>";
    }
      }

?>

</center></body>
</html>
 
- wes  -

- wes -

12/09/2007 14:20:00
Quote Anchor link
WAT werkt er niet
WAT moet het wel doen
WAT heb je al gedaan
WAT de vuck denk je dat we hiermee kunnen
 
DJ Lars

DJ Lars

12/09/2007 14:29:00
Quote Anchor link
- WAT werkt er niet
Het geeft een witte pagina
- WAT moet het wel doen
Een lijst van berichten weergeven met achter ieder bericht een bewerk of verwijder icoontje, wat er moet gebeuren nadat er op deze icoontjes wordt geklikt spreekt voor zich
- WAT heb je al gedaan
Script aangepast zodat het gebruik maakt van superglobals
$PHP_SELF vervangen door een directe link naar admin.php
Querys gecorigeerd
Syntax van bepaalde echo's en if's gecorrigeerd
- WAT de vuck denk je dat we hiermee kunnen
Als ik mijn hoofd nu ongeveer 2 cm omhoog beweeg zie ik www.phphulp.nl staan, de titel van deze website bestaat dus uit php en hulp. Ik ga er dus vanuit dat als een php script niet werkt en ik er zelf niet aan uit kom ik het hier kan posten om hulp te zoeken met dit script.
 
- wes  -

- wes -

12/09/2007 14:33:00
Quote Anchor link
Als jij naar een garage gaat met je auto gaat en je zegt 'het werkt niet' , denk je dat ze dan precies al weten wat er mis mee is?
 
DJ Lars

DJ Lars

12/09/2007 14:50:00
Quote Anchor link
Volgens mij staat er toch bovenaan mijn eerste bericht dat wanneer ik het script aanroep het een witte pagina geeft, het lijkt mij logisch dat ik niet zulke lange scripts schrijf om alleen een witte pagina weer te geven dus lijkt het mij ook duidelijk dat dat het probleem is.

Maar goed een beetje jammer dit, ik omschrijf mijn probleem ik plaats het script waar het probleem in zit en dan moet er weer zo'n lieverdje van de juf zo nodig gaan beweren dat ik niet beschrijf wat het probleem is terwijl dat zowel in de topic titel staat als in de eerste paar regels van het bericht.
 
- wes  -

- wes -

12/09/2007 14:53:00
Quote Anchor link
Ik ben aboluut niet het lieverdje van de juf (juf bas)
ask anyone

Ik heb alleen een tyfuschhekel aan mensen die hun hele code hier neergooien, al zonder codetags eromheen, even erbij zeggen dat ze zuigen met PHP en dan maar verwachten dat we het oplossen.
 
Frank -

Frank -

12/09/2007 14:58:00
Quote Anchor link
echo "<table><tr><td width=60><a href=\"admin.php?editid=".$rij->bericht_id."\"><img src=\"smilies/edit.png\" border=\"0\"></a><a href="admin.php?deleteid=".$rij->bericht_id."><img src=
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/vhosts/phphulp.nl/httpdocs/cfgs/ubbparser/bbcode.class.php on line 472
"smilies/del.png\" border=\"0\"></a></td><td width=120><a href=mailto:".$email."><b>".$naam."</b></a><br><font size=1>";

Zoals je kunt zien, staat hier al een fraaie warning in. Tevens is jouw html-code een bende, doordat je echoot met dubbele quotes moet je alle dubbele quotes in de html gaan escapen. Niet zo handig dus. Gebruik enkele quotes bij echo.

Verder heb ik mijn twijfels over het script, je controleert nergens of er iets fout is gegaan. En nu blijkt al dat er vanalles fout kan gaan. Niet zo handig dus.

Ps.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$naam"; ?>

mag je vervangen door
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $naam; ?>

Dus met php en variabelen nooit tussen quotes. Pas dit overal in jouw code aan, kan een hoop ellende schelen.
 
DJ Lars

DJ Lars

12/09/2007 15:16:00
Quote Anchor link
Nou weer wat aanpassingen gedaan, maar het heeft opnieuw geen effect gehad.

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
<?
ini_set("display_errors","on");
error_reporting(E_ALL);
mysql_connect ('***','***','***');
mysql_select_db ('***');
?>

<html>
<head>
<title>Gastenboek</title>
</head>
<body><center>
<table bgcolor="#EEEEEE"><tr>
    <td><b><font color="#666666">Gastenboek Admin</font></b></td>
  </tr></table><br>
<?php
    
        //bericht edit-form
        if (isset($_GET['editid'])) {
        $sql = "SELECT * FROM gastenboek  WHERE bericht_id='" . $_GET['editid'] . "'";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        $rij = mysql_fetch_object($resultaat);
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);?>

        <table><form method="post" action="admin.php" name="gastenboek"><input type="hidden" name="editid" value="<? echo ".$_GET['editid']."; ?>">
        <tr><td><b><font color="#666666">Reactie toevoegen</font></b></td></tr>
        <tr><td width="150">Naam:</td><td width="250"><input type="text" name="naam" size="35" value="<? echo $naam; ?>"></td></tr>
        <tr><td width="150">Email:</td><td width="250"><input type="text" name="email" size="35" value="<? echo $email; ?>"></td></tr>
        <tr><td valign="top">Reactie:</td><td><textarea name="bericht" cols="34" rows="5"><? echo $bericht; ?></textarea></td></tr>
        <tr><td></td><td><input type="submit" name="submit" value="wijzigen"></td></tr></form></table><br>
        <? }
        
        //bericht deleten
        if (isset($_GET['deleteid'])) {
        mysql_query ("DELETE FROM gastenboek_berichten WHERE bericht_id='" . $_GET['deleteid'] . "'");
        }

        
        //bericht editen
        if (isset($_POST['submit'])) {
        mysql_query("UPDATE gastenboek_berichten SET naam='".$_POST[naam]."',email='".$_POST[email]."',bericht='".$_POST[bericht]."' WHERE bericht_id = '".$_GET['editid']."'") or die(mysql_error());
        echo "<script>location.href='admin.php'</script>";}    
        
        //alle berichten weergeven
        else {
         $sql = "SELECT * FROM gastenboek_berichten ORDER BY datumtijd DESC";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        while ($rij = mysql_fetch_object($resultaat)){
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);
        echo "<table><tr><td width=60><a href=\"admin.php?editid=$rij->bericht_id\"><img src=\"smilies/edit.png\" border=\"0\"></a><a href=\"admin.php?deleteid=$rij->bericht_id\"><img src=\"smilies/del.png\" border=\"0\"></a></td><td width=120><a href=\"mailto:$email\"><b>$naam</b></a><br></td>";
        echo"<td width=220>$bericht</td></tr></table><br>";
    }
      }

?>

</center></body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door DJ Lars
 
DJ Lars

DJ Lars

12/09/2007 15:43:00
Quote Anchor link
Het is gelukt, dit moest het zijn:
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
<?
ini_set("display_errors","on");
error_reporting(E_ALL);
mysql_connect ('***','***','***');
mysql_select_db ('***');
?>

<html>
<head>
<title>Gastenboek</title>
</head>
<body><center>
<table bgcolor="#EEEEEE"><tr>
    <td><b><font color="#666666">Gastenboek Admin</font></b></td>
  </tr></table><br>
<?php
    
        //bericht edit-form
        if (isset($_GET['editid'])) {
        $sql = "SELECT * FROM gastenboek_berichten WHERE bericht_id='" . $_GET['editid'] . "'";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        $rij = mysql_fetch_object($resultaat);
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);?>

        <table><form method="post" action="admin.php" name="gastenboek"><input type="hidden" name="editid" value="<? echo $_GET['editid']; ?>">
        <tr><td><b><font color="#666666">Reactie toevoegen</font></b></td></tr>
        <tr><td width="150">Naam:</td><td width="250"><input type="text" name="naam" size="35" value="<? echo $naam; ?>"></td></tr>
        <tr><td width="150">Email:</td><td width="250"><input type="text" name="email" size="35" value="<? echo $email; ?>"></td></tr>
        <tr><td valign="top">Reactie:</td><td><textarea name="bericht" cols="34" rows="5"><? echo $bericht; ?></textarea></td></tr>
        <tr><td></td><td><input type="submit" name="submit" value="wijzigen"></td></tr></form></table><br>
        <? }
        
        //bericht deleten
        if (isset($_GET['deleteid'])) {
        mysql_query ("DELETE FROM gastenboek_berichten WHERE bericht_id='" . $_GET['deleteid'] . "'");
        }


        //bericht editen
        if (isset($_POST['submit'])) {
        mysql_query("UPDATE gastenboek_berichten SET naam='".$_POST[naam]."',email='".$_POST[email]."',bericht='".$_POST[bericht]."' WHERE bericht_id = '".$_POST['editid']."'") or die(mysql_error());
        echo "<script>location.href='admin.php'</script>";}    
        
        //alle berichten weergeven
        else {
         $sql = "SELECT * FROM gastenboek_berichten ORDER BY datumtijd DESC";
        $resultaat = mysql_query($sql) or die ("query mislukt");
        while ($rij = mysql_fetch_object($resultaat)){
        $naam = htmlspecialchars($rij->naam);
        $email = htmlspecialchars($rij->email);
        $bericht = htmlspecialchars($rij->bericht);
        echo "<table><tr><td width=60><a href=\"admin.php?editid=$rij->bericht_id\"><img src=\"smilies/edit.png\" border=\"0\"></a><a href=\"admin.php?deleteid=$rij->bericht_id\"><img src=\"smilies/del.png\" border=\"0\"></a></td><td width=120><a href=\"mailto:$email\"><b>$naam</b></a><br></td>";
        echo"<td width=220>$bericht</td></tr></table><br>";
    }
      }

?>

</center></body>
</html>
 
- SanThe -

- SanThe -

12/09/2007 15:50:00
Quote Anchor link
Als ik zo even snel kijk dan heb je een } teveel. Regel 54.
 



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.