Scholieren.com forum

Scholieren.com forum (https://forum.scholieren.com/index.php)
-   Software & Hardware (https://forum.scholieren.com/forumdisplay.php?f=20)
-   -   [php] WTF is er mis met dit script? (https://forum.scholieren.com/showthread.php?t=602977)

Ik 18-09-2003 15:43

[php] WTF is er mis met dit script?
 
PHP-code:

<html>

    <head>
    <title>Gastenboek</title>
    <link href="../css/standaard.css" rel="stylesheet" type="text/css">
    </head>

<body>

<h3><center>Stemresultaten</center></h3>


<?php
    
// Beoordelingsoverzicht

    
include("../connect.php");

    
// Haal het totaal aantal stemmen en het grootste aantal stemmen uit de database
    
$sql "SELECT SUM(stemmen) AS aantal, MAX(stemmen) AS maximum FROM votes";
    
$res mysql_query($sql) or die(mysql_error());
    
$aantal mysql_result($res0"aantal");
    
$maximum mysql_result($res0"maximum");
    
    if (
$aantal 0)
    {
        
// Haal de cijfers uit de database met een join-query
        
$sql "SELECT cijfer, stemmen FROM votes ORDER BY cijfer ASC";
        
$res mysql_query($sql) or die(mysql_error());
        if (
mysql_num_rows($res) > 0)
        {
            
// De maximumbreedte van een staafje
            
$max_width 200;
            
$max_perc $maximum $aantal;
            
$factor $max_width $max_perc;
            
            echo 
"<table border=0 cellspacing=0 cellpadding=0 width=\"400\">\n";
            while (
$row mysql_fetch_object($res))
            {
                
/* Bereken het percentage van het totaal aantal stemmen. */
                
$perc $row->stemmen $aantal;
                
$width round($perc $factor);

                
/* Laat nu de output zien. */
                
echo "<tr>\n";
                echo 
"<td valign=\"top\">$row->cijfer&nbsp;</td>\n";
                echo 
"<td valign=\"top\"><img src=\"pixel.gif\" width=\"$width\" height=\"10\"></td>\n";
                echo 
"<td valign=\"top\">".round($perc 100)."%</td>\n";
                echo 
"</tr>\n";

                
$totaal $totaal $row->cijfer $row->stemmen;
            }
            
$gemcijfer round(($totaal $aantal),1);
            echo 
"<tr>\n";
            echo 
"<td valign=\"top\"></td>\n";
            echo 
"<td valign=\"top\"><b>gemiddelde: $gemcijfer</b></td>\n";
            echo 
"</tr>\n";

            echo 
"</table>\n";
        }
        else
        {
            echo 
"Geen cijfers beschikbaar.";
        }
    }
    else
    {
        echo 
"Er is nog niet gestemd.";
    }
?>


<br>

<table align="center" cellpadding="4" border="1" width="80%">
 <tr>
  <td bgcolor="black">DATUM</td>
  <td bgcolor="black">NAAM</td>
  <td bgcolor="black">CIJFER</td>
  <td bgcolor="black">REACTIE</td>
 </tr>

 <?php
  
include("../connect.php");
  
$sql="SELECT DATE_FORMAT(datum,'%d-%m-%y') AS stringdatum, naam, cijfer, reactie FROM gastenboek ORDER by datum DESC";
  
$res=mysql_query($sql$db);
  while (
$ligne mysql_fetch_object ($res))
  {
   print 
"<tr>";
   print 
"<td><nobr>$ligne->stringdatum</nobr></td>";
   print 
"<td>$ligne->naam</td>";
    
$ligne->cijfer str_replace("0","-",$ligne->cijfer);
    
$ligne->cijfer str_replace("1-","10",$ligne->cijfer);
   print 
"<td><center>$ligne->cijfer</center></td>";
   print 
"<td>$ligne->reactie</td>";
   print 
"</tr>";
  }
  
mysql_free_result ($res);
  
mysql_close($db);
 
?>

</table>
</body>

foutmelding:

Warning: main(): Unable to access ../../connect.php in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 22

Warning: main(../../connect.php): failed to open stream: No such file or directory in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 22

Warning: main(): Failed opening '../../connect.php' for inclusion (include_path='.:/php/includes:/usr/share/php') in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 22

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 24

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 25

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 33

Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /home/virtual/site110/fst/var/www/html/gastenboek/gastenboek.php on line 34


lijn 22 is
PHP-code:

    $maximum mysql_result($res0"maximum"); 


skins 18-09-2003 15:48

Zo ik het kan zien zoekt hij 2 mappen terug naar connect.php

"Unable to access ../../connect.php"

Ik gebruik zelf geen PHP, dus ik zou niet weten hoe je het op moet lossen, maar volgens mij is dit de oorzaak

Fade of Light 18-09-2003 16:05

je links zijn verkeerd idd.

deathz0rz 18-09-2003 16:52

btw hoef je mysql_free_result() en mysql_close() niet te gebruiken, dat doet php automatisch

Enlightenment 18-09-2003 17:05

Gebruik

require('connect.php');

ipv include. Include alleen gebruiken als het niet erg is als het includen niet lukt, dus als het optioneel is.

gebruik verder _NOOIT_ relatieve dirs, maar een absoluut pad, dus:

require($_SERVER['DOCUMENT_ROOT'].'/connect.php');

Enlightenment 18-09-2003 17:07

En over je HTML, ik raad aan een doctype en charset goed in te stellen, en je code te validaten op http://validator.w3.org/

Ik 18-09-2003 17:14

Citaat:

skins schreef op 18-09-2003 @ 16:48:
Zo ik het kan zien zoekt hij 2 mappen terug naar connect.php

"Unable to access ../../connect.php"

Ik gebruik zelf geen PHP, dus ik zou niet weten hoe je het op moet lossen, maar volgens mij is dit de oorzaak

Soms blijf ik me toch echt verwonderen dat servers een eigen wil hebben:

PHP-code:

    include("../connect.php"); 

heb ik veranderd in
PHP-code:

    include("connect.php"); 

, waarna er logischerwijs een foutmelding kwam bij het uitvoeren van het script (connect staat namelijk niet in dezelfde map).

Weer veranderd in
PHP-code:

    include("../connect.php"); 

waarna het script weer functioneerde zoals het altijd al heeft gefunctioneerd: perfect.

raar, maar waar.

Bedankt.

Ik 18-09-2003 17:16

Citaat:

Enlightenment schreef op 18-09-2003 @ 18:07:
En over je HTML, ik raad aan een doctype en charset goed in te stellen, en je code te validaten op http://validator.w3.org/
...ooit...

(wat ik al 2 jaar lang zeg)

Gimme more beer 18-09-2003 17:42

Citaat:

Ik schreef op 18-09-2003 @ 18:14:
Soms blijf ik me toch echt verwonderen dat servers een eigen wil hebben:
Apart... Heel apart... Dit soort dingen gebeuren bij mij ook vaak, dan heb ik een script geschreven, precies zoals ik het altijd schrijf (soms copy-paste ik dan het gezamenlijke gedeelte) en dan pikt ie hem niet en als ik hem dan op een andere server/locatie zet, lukt het wel. Als ik hem dan terugkopieer lukt het allemaal wel weer... Strange things indeed :confused:

Enlightenment 18-09-2003 18:00

Lees de eerste van m'n 2 messagen boven nog eens, en probeer dat eens.

micra 22-09-2003 09:59

idd. volgens mij moet je niet ../ doen maar /../connect.php
misschien dat dat uit maakt?

Triloxigen 22-09-2003 10:59

Citaat:

micra schreef op 22-09-2003 @ 10:59:
idd. volgens mij moet je niet ../ doen maar /../connect.php
misschien dat dat uit maakt?

dan is het nog altijd ./../connect.php

IceManX 22-09-2003 11:58

Citaat:

McLaren schreef op 22-09-2003 @ 11:59:
dan is het nog altijd ./../connect.php
idd, /../connect.php is gelijk aan /connect.php

Wat je bedoelde (hoop ik) is absolute paden gebruiken.

Chimera 22-09-2003 12:20

Citaat:

deathz0rz schreef op 18-09-2003 @ 17:52:
btw hoef je mysql_free_result() en mysql_close() niet te gebruiken, dat doet php automatisch
Het is netter het wel te doen.

Enlightenment 22-09-2003 15:18

Wat ik dus bedoelde is dat je te alle tijde een absoluut pad dient te gebruiken, dus: require($_SERVER['DOCUMENT_ROOT'].'/init.php'); bijvoorbeeld.

Het sluiten van mysql connections gebeurt automatisch aan het eind van het script, dus dat hoeft zeker niet. Indien je script lang duurt om wat voor reden en je maakt het voor een drukke site, dan is het wel aan te raden om het handmatig eerder te doen.

Verder zou het fijn zijn als de topicstarter reageert of de aangereikte tips werken.

deathz0rz 22-09-2003 15:20

Citaat:

Enlightenment schreef op 22-09-2003 @ 16:18:
Verder zou het fijn zijn als de topicstarter reageert of de aangereikte tips werken.
Citaat:

Ik schreef op 18-09-2003 @ 18:14:
(..) waarna het script weer functioneerde zoals het altijd al heeft gefunctioneerd: perfect.

raar, maar waar.

Bedankt.


Enlightenment 22-09-2003 15:31

Oh, dan heb ik niets gezegd. :)


Alle tijden zijn GMT +1. Het is nu 00:50.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.