laatste artikel database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Lars Koning

Lars Koning

21/11/2007 11:32:00
Quote Anchor link
Oke dat dacht ik al maar weet niet hoe ik deze moet inpassen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$sql
="INSERT INTO artikel (toegevoegd,) VALUES ('".$_POST["titel"].")
}
echo "
OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
?>
 
PHP hulp

PHP hulp

07/01/2025 02:42:24
 
Joren de Wit

Joren de Wit

21/11/2007 11:35:00
Quote Anchor link
Kijk eens naar de query die ik je gaf. Het zal dus zoiets worden:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$sql
="
    INSERT INTO artikel (titel, toegevoegd)
    VALUES ('"
.$_POST["titel"]."', NOW())
    "
;
?>

Vergeet natuurlijk niet om hierna de query $sql nog uit te voeren en te controleren of de query gelukt is...
 
- SanThe -

- SanThe -

21/11/2007 11:36:00
Quote Anchor link
Probeer het eens, zou ik zeggen.
 
Lars Koning

Lars Koning

21/11/2007 11:36:00
Quote Anchor link
Nee hoor SanThe met bovenstaand geen errors.

Hoezo titel heb een veld aangemaakt in tabel artikel namelijk "toegevoegd" datetime
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
 
- SanThe -

- SanThe -

21/11/2007 11:42:00
Quote Anchor link
guido schreef op 21.11.2007 11:36:
Nee hoor SanThe met bovenstaand geen errors.

Hoezo titel heb een veld aangemaakt in tabel artikel namelijk "toegevoegd" datetime

Achter 'toegevoegd' staat een losse komma, daar hoort een error bij.
 
Joren de Wit

Joren de Wit

21/11/2007 11:44:00
Quote Anchor link
Quote:
Hoezo titel heb een veld aangemaakt in tabel artikel namelijk "toegevoegd" datetime
Een beetje zelf klooien mag natuurlijk ook. Jij wilt $_POST['titel'] gaan invoegen in een DATETIME veld, dat gaat natuurlijk nooit lukken!

Wil je die titel niet invoegen dan wordt je query eenvoudig:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$sql
="
    INSERT INTO artikel (toegevoegd)
    VALUES (NOW())
    "
;
?>

Alleen wordt er nu een nieuw record ingevoegd met enkel een datum. Niet bijzonder handig lijkt me...

ps. @SanThe: hij krijgt geen foutmelding omdat hij 1) de query niet uitvoert en 2) er nog niets aan foutafhandeling in zn script staat...
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Lars Koning

Lars Koning

21/11/2007 12:02:00
Quote Anchor link
Ik raak steeds verder van mijn doel even terug naar basis heb nu onderstaand maar krijg deze melding:

Toevoegen artikel mislukt!You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
ini_set ('display errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);

// Rest van het script

$db = mysql_connect("localhost", "", "")
        or die("Kan niet verbinden: " . mysql_error());
mysql_select_db("", $db);
?>

<html>
<head>
<title>Artikel toevoegen</title>
</head>

<body>
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
<?php
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST

['prijs'])){
$sql = "INSERT INTO artikel (Naam, Omschrijving, Prijs) VALUES ('".$_POST

["naam"]."', '".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error();
        exit;
}
else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij
$sql = "INSERT INTO categorie_per_artikel (Artikel_id, Categorie_id) VALUES

('"
.$artikelid."','".$_POST["categorieid"]."')";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
        exit;
        }
}

echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
}
else {
?>


<form method="post" action="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_SERVER["PHP_SELF"]; ?>
">
Selecteer een categorie: <select name="categorieid">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
    $sql
= "SELECT * FROM categorie";
    $resultaat  = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL

code uit
    while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=\"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
    }


?>

</select><br>
Titel: <input type="text" name="naam"><br>
Omschrijving: <textarea name="omschrijving" cols="30" rows="4"></textarea><br>
Telefoon + landcode:<input type="text" name="prijs"><br>
<input type="submit" name="knop" value="toevoegen">
</form>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
  }
?>

<a href=""

class="artikel_afbeelding">afbeelding uploaden</a>
</body>
</html>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
require "footer.php";
?>
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
 
- SanThe -

- SanThe -

21/11/2007 12:06:00
Quote Anchor link
Je $_POST is blijkbaar leeg.
 
Joren de Wit

Joren de Wit

21/11/2007 12:10:00
Quote Anchor link
SanThe schreef op 21.11.2007 12:06:
Je $_POST is blijkbaar leeg.
Dat zal het niet zijn, er wordt immers met isset() gecontroleerd of de variabelen bestaan.

Echo bij een foutmelding ook altijd je query, dan kun je zien waar het fout gaat. Ik gok dat de fout in $_POST['prijs'] zit, is dat wel een integer?
 
Lars Koning

Lars Koning

21/11/2007 12:28:00
Quote Anchor link
Titel moet ik dat vervangen door veld in mijn tabel omschrijving?

if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST

['prijs'])){

Deze melding krijg ik

Notice: Undefined index: titel in /home//domains//public_html/artikel_toevoegen1.php on line 34
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
<?php
$artikelid
= mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij
$sql = "INSERT INTO categorie_per_artikel (Artikel_id, Categorie_id) VALUES

('"
.$artikelid."','".$_POST["categorieid"]."')";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
        exit;
        
        }

$sql ="
    INSERT INTO artikel (titel, toegevoegd)
    VALUES ('"
.$_POST["titel"]."', NOW())
    "
;
}

echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
}
else {
?>
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
 
- wes  -

- wes -

21/11/2007 12:30:00
Quote Anchor link
He guido lang niet gezien, zie dat je nog ggeen kloot bent opgeschoten in 314 posts.

Het antwoord is al 129x gegeven, wellicht iets om er iets mee te gaan doen... of om PHP te leren...

als je het niet voor jezelf doet, doe het voor ons
 
Joren de Wit

Joren de Wit

21/11/2007 12:32:00
Quote Anchor link
Quote:
Titel moet ik dat vervangen door veld in mijn tabel omschrijving?
Huh? Ik snap ff niet wat je bedoelt.

Maar echo nu de query eens als blijkt dat hij niet gelukt is, dan zie je direct wat er fout gaat...
 
Lars Koning

Lars Koning

21/11/2007 12:36:00
Quote Anchor link
$sql ="
INSERT INTO artikel (titel, toegevoegd)
VALUES ('".$_POST["titel"]."', NOW())
";

Wat ik bedoel ik heb nergens een veld in een tabel die titel heet

mijn tabel artikel ziet er zo uit
Artikel_id
Naam
Omschrijving
Prijs
toegevoegd
 
Joren de Wit

Joren de Wit

21/11/2007 12:37:00
Quote Anchor link
Goed, de titel sla je blijkbaar op in de kolom 'Naam'? Dan verander je dat toch gewoon in die query?

Het is jouw systeem, niet het mijne. Ik kan dus ook onmogelijk ruiken hoe jouw database eruit ziet en hoe de queries er dus precies uit moeten zien! De voorbeelden die ik geef moet je natuurlijk wel naar je eigen situatie aanpassen...
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Lars Koning

Lars Koning

21/11/2007 12:48:00
Quote Anchor link
YES GOT IT

$sql ="
INSERT INTO artikel (naam, toegevoegd)
VALUES ('".$_POST["naam"]."', NOW())
";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>

Bedankt jij ookWES je hebt me in het verleden ook vaak geholpen kritiek word je beter van.

Groet
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
 
- SanThe -

- SanThe -

21/11/2007 12:52:00
Quote Anchor link
De laatste query voer je niet uit.
 
Frank -

Frank -

21/11/2007 12:56:00
Quote Anchor link
Die $_POST zul je nog wel even moeten beveiligen, SQL-injection en mislukte queries liggen nu op de loer. mysql_real_escape_string() doet wonderen, zie de handleiding.
 

Pagina: « vorige 1 2



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.