Page 1 of 8 12345 ... Last
  1. #1
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0

    php: mysql_query() error

    Ik heb een probleempje, ik wil graag als wijze van voorbeeld een werknemer of eender wat toevoegen in mijn database maar ik krijg een error op lijn 19 (
    PHP Code:
    $result mysql_query($query$db) or die("FOUT"); 
    ) ik krijg dus de foutmelding "FOUT" zoals ik zelf geschreven heb.

    de html code voor het formulieer dat waarschijnlijk geen problemen levert is
    form name="form1" method="post" action="werknemertoevoegen.php">
    Code:
    <p>id:
        <input type="text" name="id">
      </p>
      <p>Voornaam
        <input type="text" name="Jorge">
      </p>
      <p>Toestel
        <input type="text" name="toestel">
    </p>
      <p>
        <input type="submit" name="Submit" value="Submit">
    </p>
    </form>
    het probleem ligt hem hoogstwaarschijnlijk hier en ik ben er bijna zeker van dat het op deze lijn ligt zoals ik vanboven nog eens heb vermeld

    PHP Code:
    $result mysql_query($query$db) or die("FOUT"); 
    hieronder de volledige code
    PHP Code:
    <?php
    $db 
    mysql_connect("host""user""pas");
    mysql_select_db("werknemers"$db);
    $result mysql_query("SELECT * FROM werknemers"$db);
    if (empty(
    $_POST)){
    echo(
    "Vul eerst de <a href=\"werknemer.php\">gegevens</a> in");
    exit();
    } else {
    $query .= "INSERT INTO werknemers (id, naam, toestel)";
    $query .= "VALUES ('";
    $query .= $_POST['id']."','";
    $query .= $_POST['voornaam']."','";
    $query .= $_POST['toestel']."');";
    $result mysql_query($query$db) or die("FOUT");
    }
    ?>
    </head>

    <body>
    <?php
    $db 
    mysql_connect("host""user""pas") or die("fout geen connectie met db");
    mysql_select_db("leden"$db);
    $result mysql_query("SELECT * FROM werknemers"$db);
    while (
    $rij mysql_fetch_array($result)){
        echo(
    $rij["id"]."|".$rij["voornaam"]."|".$rij["kamer"]."<br>");
    }
    ?>
    in het onderste gedeelte zou de de volledige lijst moeten komen van werknemers die er dus niet komt. OF alleen de lijst van werkenmers die ik handmatig in mijn db heb gestopt.



    Alvast bedankt
    Last edited by killer bel; 24-10-2004 at 18:26.
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  2. #2

    Registered
    12/10/02
    Location
    mars
    Posts
    14,319
    iTrader
    2 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0
    vervang "fout" eens door mysql_error():
    $result = mysql_query($query, $db) or die(mysql_error());

    en je kan ook best checken of die _POST vars wel bestaan
    no votes  

  3. #3
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    bedankt, killgore. Dan krijg ik dit wat me al al veel wijzer maakt!

    No Database Selected

    maar ik heb mijn database toch geselecteerd? dat zie je hier
    PHP Code:
    mysql_select_db("leden"$db); 
    wat moet ik dan doen?
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  4. #4

    Registered
    12/10/02
    Location
    mars
    Posts
    14,319
    iTrader
    2 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0
    nog es een or die(mysql_error()) achter die select_db zetten
    no votes  

  5. #5
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    ik ben de fout gevonden ik had blijkbaar de verkeerde database naam ingevoerd. Maar nu blijkt er precies nog een foutje in te zitten namelijk

    Unknown column 'naam' in 'field list'

    wat heeft dat te betekenen?

    thanks, killer
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  6. #6

    Registered
    12/10/02
    Location
    mars
    Posts
    14,319
    iTrader
    2 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/0
    dat het veld naam niet bestaat.

    zeker dat et niet name of zo is?
    no votes  

  7. #7
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    gadver je hebt gelijk het is voornaam
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  8. #8
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    bedankt,
    nu werkt hij half...
    als ik de lijst oproep met de id, voornaam en toestelnummer krijg ik alleen de id en de toestelnummer te zien

    waarschijnlijk ligt het prob ergens hierin

    PHP Code:
    $result mysql_query("SELECT * FROM werknemers"$db);
    while (
    $rij mysql_fetch_array($result)){
        echo(
    $rij["id"]."|".$rij["voornaam"]."|".$rij["toestel"]."<br>"); 
    Last edited by killer bel; 24-10-2004 at 18:25.
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  9. #9
    Zero Grav's Avatar
    Registered
    06/06/04
    Location
    Bilzen
    Posts
    8,805
    iTrader
    18 (100%)
    Mentioned
    0 Post(s)
    Reputation
    42/128
    Ik krijg ze alledrie te zien zenne, niet te vergeten dat ID een auto_incremented unique waarde is die ge automatisch in moet laten vullen en ni dmv het form :|
    no votes  

  10. #10
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    ja, ik heb net verbeterd zodat het wel werkt, joepie!!
    ik weet hoe je in sqlite een de id automatisch moet laten invullen maar niet met mysql
    waarschijnlijk met auto_incremented zoals je zei. Ik snel eventjes een nieuwe tabel maken.
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  11. #11
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    yuw, ik zit met een verry wierd prob, soms het er niet en soms is het er niet

    dit is de code:
    PHP Code:
    <table border="1" width="80%" align="center">
    <tr>
        <th>ID</th>
        <th>Naam</th>
        <th>Toestel</th>
    </tr>
    <?php
    include("inc_connect_mysql.php");
    while (
    $rij mysql_fetch_array($result)){
        echo(
    "<tr><td>".$rij["id"]."</td>".
        
    "<td>".$rij["voornaam"]."</td>".
        
    "<td>".$rij["toestel"]."</td>".
        
    "<td><a href=\"verwijder_werknemer.php?id=".$rij["id"]."\">verwijder</a>".
        
    "</td></tr>");
    }
    ?>
    </table>

    En dit is de foutmelding:

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /usr/local/psa/home/vhosts/pagedesign.be/httpdocs/xpages/werknemer.php on line 18
    Last edited by killer bel; 25-10-2004 at 22:12.
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  12. #12
    Zero Grav's Avatar
    Registered
    06/06/04
    Location
    Bilzen
    Posts
    8,805
    iTrader
    18 (100%)
    Mentioned
    0 Post(s)
    Reputation
    42/128
    wel uhm.. waar is $result

    + het automatisch laten invullen van een _id in mysql doet ge gewoon door het leeg te laten. Bij het opstellen van uw tabel zet ge unique & auto_increment aan en dan bij het opslaan van een gegeven bv.

    INSERT INTO blabla (id,test,test2) VALUES ('', 'test', 'test2');
    maar ik doe gewoon
    INSERT INTO blabla (test, test2) VALUES ('test', 'test2');

    (dit zal btw wel ni werken aangezien ik altijd wel een fout heb met een of ander aanhalingsteken)

    maar zoals ge ziet, gewoon leeglaten en die voegt da automatisch in
    no votes  

  13. #13
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    ja, bedankt zero gravety

    maar nu heb ik een ander prob
    en ik moet toegeven dit script komt niet helemaal van mij.
    ik zou graag een tabel hebben waar er een link is waar je een id kan verwijderen. de link zou www.blablabla.be/blablabla.php?id=3 of iets in die aard ik denk wel dat je me snapt. Maar hoe kan ik nu zo'n pagina automatisch aanmaken, hij maakt de link wel. vanonder staat hij. Maar die pagina zelf wil er maar niet komen. Weten jullie hoe het moet.

    ik weet dat de pagina door $_GET in een querystring naar de browser word verzonder maar hoe je dat echt doe weet ik niet, aangezien ik het script grotendeels uit een boek heb.

    als je het niet snapt moet maar eens naar deze link gaan en op verwijder drukken, normaal moet er dan een pagina komen met de gegevens die wil verwijderen en een exept butten, maar dit wil dus niet komen.

    de code:
    PHP Code:
    <?php
    include ("inc_connect_mysql");
    if (isset(
    $_POST["bevestiging"]))
        
    $query"DELETE FROM WERKNEMERS WHERE id="$_POST["id"];
        
    $result mysql_query($query$db) or die("Fout: ".mysql_error());
        echo(
    "De volgende opdracht is uitgevoerd: $query <br>");
        if(
    $result){
            echo(
    "Record nummer".$_POST["id"]."is verwijderd <br>");
            echo(
    "|<a href \"werknemer.php\">Terug naar het overzicht</a>");
        }
    } else {
        
    $query "SELECT * FROM werknemers WHERE id=".$_GET["id"];
        
    $result mysql_query($query$db) or die(mysql_error());
    ?>
    </head>

    <body>
    <?php
    while ($rij mysql_fetch_array($result)){
        echo(
    "Id = ".$rij["id"]."<br>");
        echo(
    "Naam= ".$rij["voornaam"]."<br>");
        echo(
    "Toestel :".$rij["toestel"]."<br><hr>");
    }
    ?>
    <form action="<?php echo($_SERVER['PHP_SELF']);?>" method="post">
    <input type="hidden" name="bevestiging" value="1">
    <input type="hidden" name="<?php echo($_GET["id"]);?>">
    <input type="Submit" value="Ja, verwijderen">
    <input type="Button" value="Nee, terug">
    onclick = "javascript:history.back();">
    </form>
    <?php
    }
    ?>
    EDIT:// en $result zit in de pagina inc_connect_mysql.php
    Last edited by killer bel; 26-10-2004 at 22:46.
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

  14. #14
    Zero Grav's Avatar
    Registered
    06/06/04
    Location
    Bilzen
    Posts
    8,805
    iTrader
    18 (100%)
    Mentioned
    0 Post(s)
    Reputation
    42/128
    offtopic: mijn nick is ni afgeleid van gravity een beetje #we-care maar kom. ^^
    no votes  

  15. #15
    killer bel's Avatar
    Registered
    24/03/04
    Location
    Gierle
    Posts
    512
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    oeps sorry, maar euh weet je de oplossing?
    Xboxen .....The site...
    Status: Learning C
    I love it
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in