Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

[PHP] CD database, kan niet toevoegen

None
17 antwoorden
  • Ik ben net begonnen met MySQL, en om maar iets te proberen wou ik een CD database maken, dit is mn php script:

    [code:1:95575d6ceb]
    <?php
    mysql_connect ("localhost","vakbunga_marco","*_*_*_");
    mysql_select_db ("vakbunga_cddb") or die (" ERROR: ".mysql_error());
    if ($_GET['mode'] == 'add') {
    if ($_POST['submit']) {
    $titel = $_POST['Titel'];
    $artiest = $_POST['Artiest'];
    $cds = $_POST['cds'];
    $type = $_POST['Type'];
    $query = "INSERT INTO cddb (Titel, Artiest, cds, Type) VALUES ($titel,$artiest,$cds,$type)";
    if (mysql_query($query)) { echo "cd's toegevoegd"; } else { echo "niet toegevoegd"; }
    }
    echo "Cd toevoegen:";
    echo "<form action=\"".$_SERVER['PHP_SELF']."\" method=\"post\">";
    echo "Titel: <input type=\"text\" name=\"Titel\"><br>";
    echo "Artiest: <input type=\"text\" name=\"Artiest\"><br>";
    echo "Aantal CDs: <input type=\"text\" name=\"cds\"><br>";
    echo "Type: <input type=\"text\" name=\"Type\"><br>";
    echo "<input type=\"submit\" value=\"CD Toevoegen\" name=\"submit\"><input type=\"reset\" value=\"Reset\"><br>";
    echo "<a href=\"index.php\">Terug</a>";

    echo "</form>";

    }
    elseif ($_GET['mode'] == 'view') {
    echo "<table border=1>";
    echo "<tr><td>Titel:</td><td>Artiest:</td><td>Aantal CDs:</td><td>Type:</td></tr>";
    $result = mysql_query ('SELECT * FROM cddb') or die (" ERROR: ".mysql_error());
    while ($row = mysql_fetch_array($result)) {
    $Titel = $row['Titel'];
    $Artiest = $row['Artiest'];
    $cds = $row['cds'];
    $Type = $row['Type'];
    echo "<tr><td>".$Titel."</td><td>".$Artiest."</td><td>".$cds."</td><td>".$Type."</td></tr>";
    }
    echo "</table>";
    echo "<br><a href=\"index.php\">Terug</a>";
    }
    else {
    echo "<a href=\"index.php?mode=add\">CD Toevoegen</a><br><a href=\"index.php?mode=view\">CDs Bekijken</a>";
    }
    ?>
    [/code:1:95575d6ceb]

    (Nee, dat is niet mn echte db wachtwoord), ik kan nu wel CD's bekijken, maar niet toevoegen. de gebruikersnaam en wachtwoord en db_select kloppen gewoon, want ik kan wel mn database uitlezen.

    Wat doe ik fout?
  • [code:1:212df6cb82]$query = "INSERT INTO cddb (Titel, Artiest, cds, Type) VALUES ('$titel','$artiest','$cds','$type')";[/code:1:212df6cb82]

    Probeer dit eens.
    Je hebt wel gekeken of de variabelen een waarde hebben?
    ff echoen voor je de query uitvoert om te checken.
  • zoek de verschillen:

    mysql_select_db ("[b:11a9b5cd91]vakbunga_cddb[/b:11a9b5cd91]")

    $query = "INSERT INTO [b:11a9b5cd91]cddb[/b:11a9b5cd91] (Titel, Artiest, cds, Type)

    t.
  • een db selecteren en lezen is [b:5909d6d6a1]HEEL[/b:5909d6d6a1] iets anders als een db updaten of inserten. Dus kijk eens naar de rechten die je zelf heb gegeven aan de user waarmee je wil schrijven.

    Ik denk dat je het daar moet zoeken.
  • [quote:008a79db40="teacher"]zoek de verschillen:

    mysql_select_db ("[b:008a79db40]vakbunga_cddb[/b:008a79db40]")

    $query = "INSERT INTO [b:008a79db40]cddb[/b:008a79db40] (Titel, Artiest, cds, Type)

    t.[/quote:008a79db40]

    En als je nu een [b:008a79db40]database[/b:008a79db40] vakbunga_cddb hebt en de [b:008a79db40]tabel[/b:008a79db40] cddb? :wink:
    Want dat quote je nu.
  • joh.. daar zeg je wat…

    volgende keer beter lezen :P
  • mn username (vakbunga_marco) heeft alle permissies / rechten, in Cpanel gedaan.
    ik krijg tijdens ook geen echo van cd toegevoegd of niet toegevoegd..
  • [quote:03a355ab44="Chestah"]mn username (vakbunga_marco) heeft alle permissies / rechten, in Cpanel gedaan.
    ik krijg tijdens ook geen echo van cd toegevoegd of niet toegevoegd..[/quote:03a355ab44]Kan je de query niet echo-en en hier posten. misschien mist er wat info ofzo.
  • de permissies veranderen? dat heb ik gewoon aangeklikt in CPanel :oops:
  • echo"<input type="hidden" name="mode" value ="add">
    ";
    toevoegen in je echo "Cd toevoegen:"; ?

    Want volgens mij kijk je of je een "add" heb en die stuur je niet mee, wel een "Submit"
  • [quote:9076351d56="sjouken"]echo"<input type="hidden" name="mode" value ="add">
    ";
    toevoegen in je echo "Cd toevoegen:"; ?

    Want volgens mij kijk je of je een "add" heb en die stuur je niet mee, wel een "Submit"[/quote:9076351d56]Dat kan het best wel eens zijn. Hebben we daar allemaal overheen gelezen :oops:
  • Als ik jou code eens beter leesbaar overneem dan mis je een }

    Heb het even verbeterd en een aantal checks ingebouwd om te kijken of alle variabelen de goeie of iig een waarde hebben.

    [code:1:0ed9ef9145]
    if ($_GET['mode'] == 'add')
    {
    if ($_POST['submit'])
    {
    $titel = $_POST['Titel'];
    $artiest = $_POST['Artiest'];
    $cds = $_POST['cds'];
    $type = $_POST['Type'];

    echo("<br>Titel: " . $title);
    echo("<br>Artiest: " . $artiest);
    echo("<br>CDs: " . $cds);
    echo("<br>Type: " . $type);

    $query = "INSERT INTO cddb (Titel, Artiest, cds, Type) VALUES ('$titel','$artiest','$cds','$type')";

    if (mysql_query($query))
    {
    echo "cd's toegevoegd";
    }
    else
    {
    echo "niet toegevoegd";
    }
    }
    else
    {
    echo("Geen submit.");
    }
    }
    else
    {
    echo("Mode: was niet add. Mode: " . $_GET['mode']);
    }
    [/code:1:0ed9ef9145]
  • oeps foutje. te snel gelezen
  • zouden jullie het een beetje overzichtelijk kunnen houden, ik kan niet echt meer volgen wat nu wel klopt en wat niet.
  • [quote:d4eb516316="Sjoerd Boerhout"]Als ik jou code eens beter leesbaar overneem dan mis je een }

    [/quote:d4eb516316]

    waar ?
  • Hm als ik nu je volledige code uit ga schrijven klopt het weer wel.
    Heb hem ff helemaal uitgeschreven en hier en daar wat veranderd. Heb hem voor zover zonder database kon getest en dat werkte.

    [code:1:806d0dfd17]<?php
    mysql_connect ("localhost","vakbunga_marco","*_*_*_");
    mysql_select_db ("vakbunga_cddb") or die (" ERROR: " . mysql_error());

    if ($_GET['mode'] == 'add')
    {
    if ($_POST['submit'])
    {
    $titel = addslashes($_POST['Titel']);
    $artiest = addslashes($_POST['Artiest']);
    $cds = addslashes($_POST['cds']);
    $type = addslashes($_POST['Type']);

    $query = "INSERT INTO cddb
    (Titel, Artiest, cds, Type)
    VALUES (
    '$titel',
    '$artiest',
    '$cds',
    '$type'
    )";

    if (mysql_query($query))
    {
    echo "cd's toegevoegd";
    }
    else
    {
    echo "niet toegevoegd";
    }
    }
    ?>
    Cd toevoegen:
    <form action='<?php echo($_SERVER['PHP_SELF']); ?>' method='post'>

    Titel: <input type='text' name='Titel'><br>
    Artiest: <input type='text' name='Artiest'><br>
    Aantal CDs: <input type='text' name='cds'><br>
    Type: <input type='text' name='Type'><br>
    <input type='hidden' name='mode' value ='add'>
    <input type='submit' value='CD Toevoegen' name='submit'>
    <input type='reset' value='Reset'><br>
    <a href='<?php echo($_SERVER['PHP_SELF']); ?>'>Terug</a>

    </form>
    <?php
    }
    elseif ($_GET['mode'] == 'view')
    {
    echo "<table border=1>";
    echo "<tr><td>Titel:</td><td>Artiest:</td><td>Aantal CDs:</td><td>Type:</td></tr>";
    $result = mysql_query ('SELECT * FROM cddb') or die (" ERROR: ".mysql_error());

    while ($row = mysql_fetch_array($result))
    {
    $Titel = $row['Titel'];
    $Artiest = $row['Artiest'];
    $cds = $row['cds'];
    $Type = $row['Type'];

    echo "<tr><td>" . $Titel ."</td><td>" . $Artiest . "</td><td>" . $cds . "</td><td>" . $Type . "</td></tr>";
    }

    echo "</table>";
    echo "<br><a href=\"index.php\">Terug</a>";
    }
    else
    {
    echo "<a href='" . $_SERVER['PHP_SELF'] . "?mode=add'>CD Toevoegen</a><br><a href='" . $_SERVER['PHP_SELF'] . "?mode=view'>CDs Bekijken</a>";
    }
    ?> [/code:1:806d0dfd17]
  • het toevoegen lukt nog steeds niet, ik kan wel gewoon dingen invoegen met phpmyadmin en dan bekijken op index.php?mode=view , maar toevoegen lukt nog niet. ik denk dat het iets met de variabelen te maken heeft..

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.