php fout

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

George mendel

george mendel

17/02/2011 18:47:47
Quote Anchor link
ik ben bezig met het maken van een script waarbij men per record kan zoeken uit de database.
alleen als ik de gegevens invoer krijg ik een melding met:
Er is niets gevonden op jou zoekterm:

zoek opnieuw

zouden jullie mij hiermee willen helpen.
de gegevens die ik heb zijn :

resultaat.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
<?php

    error_reporting(0);

    //-- natuurlijk moet er eerst een connectie met de database worden gemaakt:
    if (!@mysql_select_db("music", @mysql_connect("localhost", "root", "")))
    {

        echo "Er kan geen database connectie gemaakt worden.";
        exit();
    }


    //-- $HTTP_POST_VARS[zoekterm] is de naam van het zoekveld in het formulier wat we
    //-- hebben gemaakt in het vorige 'hoofdstuk'. Dit is dus de SQL code:

    $sql = "SELECT Opera,Componist,Aria,Stemtype,Taal FROM opera WHERE tekst LIKE '%$HTTP_POST_VARS[zoekterm]%'";
    
    //-- voer de SQL code uit en zet dit in een variabele zodat we zometeen kunnen
    //-- kijken of er een resultaat is

    $res = mysql_query($sql);
    
    //-- bekijk nu of er een resultaat is, of het zoekwoord dus gevonden is of niet
    if (mysql_num_rows($res) >= 1)
    {

        //-- er is een resultaat gevonden, toon de resultaten via een while () loop
        while ($row = mysql_fetch_array($res))
        {

            echo "<p>Resultaat Opera: <b>$row[Opera]</b><br>";
            echo "Resultaat Componist: <b>$row[Componist]</b></p>";
            echo "Resultaat Aria: <b>$row[Aria]</b></p>";
            echo "Resultaat Stemtype: <b>$row[Stemtype]</b></p>";
            echo "Resultaat Taal: <b>$row[Taal]</b></p>";
        }

        
        echo "<a href=\"zoek.php\" title=\"zoek opnieuw\">zoek opnieuw</a>";
    }

    //-- als er geen resultaat is gevonden, dus als het zoekwoord niet gevonden is:
    else
    {
        echo "<p>Er is niets gevonden op jou zoekterm:<b> $HTTP_POST_VARS[zoekterm]</b></p>";
        
        echo "<p><a href=\"zoek.php\" title=\"zoek opnieuw\">zoek opnieuw</a></p>";
    }

?>


ooh heb ik een formulier gemaakt die per record kan zoeken:

zoek.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
<html>
<head>
    <title>Records zoeken</title>
</head>

<body>
<h2>U kunt hier zoeken op verschillende velden:</h2>
<form action="resultaat.php" method="post">
<input type="text" name="trefwoord" value="" size="30"><br>
<input type="Radio" name="zoeken" value="Opera"> Opera
<input type="Radio" name="zoeken" value="Componist"> Componist
<input type="Radio" name="zoeken" value="Aria"> Aria
<input type="Radio" name="zoeken" value="Stemtype"> Stemtype
<input type="Radio" name="zoeken" value="Taal"> Taal
<hr>
<input type="Submit" value="Zoeken">
<input type="Button" value="Terug" onclick="javascript:history.back();">
</form>
</body>
</html>


Graag in het vervolg bij code, [code] [/code] tags gebruiken. [/modedit]
Gewijzigd op 17/02/2011 18:52:07 door Bas IJzelendoorn
 
PHP hulp

PHP hulp

26/12/2024 05:31:46
 
Kevin Newesil

Kevin Newesil

17/02/2011 18:51:52
Quote Anchor link
probeer bij je database connct en queries, een or die :

mysql_select_db("music", @mysql_connect("localhost", "root", ""))or die(mysql_error())

en haal de !@ weg, en maak die
if(!empty(mysql_error()){
foutmelding
}
 
- Ariën  -
Beheerder

- Ariën -

17/02/2011 18:53:50
Quote Anchor link
or die() is nooit een goede oplossing...
 
Kevin Newesil

Kevin Newesil

17/02/2011 18:57:32
Quote Anchor link
wel voor het bekijken van eventuele onopgeloste niet zichtbare fouten,
 
Jasper DS

Jasper DS

17/02/2011 18:57:50
Quote Anchor link
Kevin Newesil op 17/02/2011 18:57:32:
wel voor het bekijken van eventuele onopgeloste niet zichtbare fouten,


Nooit

Je kan werken met een if else structuur voor foutmeldingen.
Gewijzigd op 17/02/2011 18:58:28 door Jasper DS
 
- Ariën  -
Beheerder

- Ariën -

17/02/2011 18:58:23
Quote Anchor link
dan ook niet. Je wilt je script nooit laten 'sterven' als er iets fout gaat.
 
Kevin Newesil

Kevin Newesil

17/02/2011 18:59:31
Quote Anchor link
niet op een website neej, maar als je database posts niet werken kan je in je offline server kijken waar de fout zit om die zodoende op te kunnen lossen voor de online webpagina. tenslotte draait het om een fout eruit te halen en niet om de mooiheid van het script.
 

17/02/2011 19:01:46
Quote Anchor link
Kevin Newesil op 17/02/2011 18:59:31:
niet op een website neej, maar als je database posts niet werken kan je in je offline server kijken waar de fout zit om die zodoende op te kunnen lossen voor de online webpagina. tenslotte draait het om een fout eruit te halen en niet om de mooiheid van het script.


Een server is nooit offline, dan is er geen verbinding.
Als geen verbinding met de database kon worden gemaakt, niet de juiste tabel worden geselecteerd, de query niet goed uitgevoerd kon worden, of wat dan ook. Dan is die nog steeds niet nodig. Je kunt gewoon een if / else structuur gebruiken. Ook bij debuggen.
Als je dat nu toepast hoef je later niet zoveel aan te passen.
 
George mendel

george mendel

18/02/2011 22:34:41
Quote Anchor link
het is gelukt, ik heb het hele script anders geschreven!!
 



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.