SQL Query hulp

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Hendrik

hendrik

24/03/2006 15:05:00
Quote Anchor link
ik probeer de volgende query uit te voeren om een notitie toe te kunnen voegen voor de klant die ik op dat moment geselecteerd heb.

Selecteer klant
FOUT: 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

$query= "INSERT INTO klanten (klant_notitie) WHERE klant_id=" . $_GET["id"];

Ik doe vast weer eens iets helemaal verkeerd :s

Bij de link naar notities toevoegen neem ik het ID dus mee notities.php?id=2 en ik wil dus de query uitvoeren en een notitie toevoegen aan ID 2 :x
 
PHP hulp

PHP hulp

16/11/2024 15:20:08
 
- wes  -

- wes -

24/03/2006 15:07:00
Quote Anchor link
Je wilt iets toevoegen (INSERT) of wil je iets updaten (WHERE ...)

?
 
Arjan Kapteijn

Arjan Kapteijn

24/03/2006 15:08:00
Quote Anchor link
Hoe is je database opzet?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
INSERT INTO klanten (klant_id, klant_notitie)
VALUES ($id, '$notitie');
Gewijzigd op 24/03/2006 15:14:00 door Arjan Kapteijn
 

24/03/2006 15:10:00
Quote Anchor link
near '' duidt er haast op dat $_GET['id'] leeg is.

Daarnaast heb je natuurlijk geen WHERE clause bij een INSERT (vertaling van post van wes)
 
Hendrik

hendrik

24/03/2006 15:20:00
Quote Anchor link
ik kan natuurlijk nooit meedere notities toevoegen als ik klant_notitie bij de klant gegevens tabel inzet :s

mijn hele DB opzet klopt indd niet en geen where bij insert hehe ok x) oeps
 
Arjan Kapteijn

Arjan Kapteijn

24/03/2006 15:22:00
Quote Anchor link
Het makkelijkste is een tabel 'notities'.

notitieid (int, uniek, auto numeriek, pk)
klantid (int, verwijst naar je klanten tabel (fk))
notitie (text o.i.d.)
datum (datetime)

Dan kan een klant zovel notities toevoegen als hij wilt zonder dat je een database probleem krijgt.
 
Willem Jan Z

Willem Jan Z

24/03/2006 15:25:00
Quote Anchor link
MarDek:
near '' duidt er haast op dat $_GET['id'] leeg is.


Dat is onzin, het kan van alles betekenen, ik denk in dit geval dat het betekent dat de parameter VALUES mist, waardoor er niks tussen ' en ' staat.
Gewijzigd op 24/03/2006 15:26:00 door Willem Jan Z
 
Hendrik

hendrik

24/03/2006 15:33:00
Quote Anchor link
Arjan:
Het makkelijkste is een tabel 'notities'.


klantid (int, verwijst naar je klanten tabel (fk))


Begrijp wat je bedoelt alleen hoe krijg ik een klant_id in mijn notities tabel die gekoppeld is aan mijn klant_id van tabel klanten :x

w8 volgens mij begint het te dagen. ff aanprutsen weer
Gewijzigd op 24/03/2006 15:39:00 door hendrik
 
Hendrik

hendrik

24/03/2006 16:30:00
Quote Anchor link
stapje verder dacht ik maar krijg dezelfde foutmelding met volgende query.

$date = date('d-m-Y, H-i-s');
$query= "INSERT INTO notities (klant_id, notitie, notitie_datum)";
$query .= "VALUES ('";
$query .= $_GET["id"] ."', '" ;
$query .= $_POST["notitie"] ."', '" ;
$query .= $date ."', '" ;
$result = mysql_query($query, $db) or die ("FOUT: " . mysql_error());
echo 'De notitie is toegevoegd klik <a href="index.php">hier</a> om naar het hoofdmenu te gaan.';
 
Arjan Kapteijn

Arjan Kapteijn

24/03/2006 16:30:00
Quote Anchor link
Nouja... in een echte relationele database knoop je die dingen aan elkaar. Mysql is niet echt een relationele database, dus vul je daar gewoon het juiste cijfertje in :).

Gewoon zorgen dat beide tabellen hetzelfde klantid hebben dus.
 
Arjan Kapteijn

Arjan Kapteijn

24/03/2006 16:40:00
Quote Anchor link
ziezo is het $_GET['waarde'], enkele quotes dus. Tevens moeten er om strings enkele quotes, ints niet.

En een datum voeg je toe met een NOW(), niet met een php date() gebeuren.
 
Hendrik

hendrik

24/03/2006 17:13:00
Quote Anchor link
ik raak gestoord van die quotes x) ik blijf iedere keer maar die freakin

for the right syntax to use near '' at line 1 error krijgen #$#@%$#
 
Arjan Kapteijn

Arjan Kapteijn

24/03/2006 17:15:00
Quote Anchor link
Ligt eerder aan jou denk ik hoor ;). Echo de $query eens voordat je hem uitvoert.
 
Hendrik

hendrik

24/03/2006 17:21:00
Quote Anchor link
mischien dat het van mijn hele script iets duidelijker wordt hehe

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
<?php
    include "inc_connect_mysql.inc.php";
    
    if(empty($_POST['wijzigen'])){ ;
    echo '
            <form name=klanten method=POST action='
.$_SERVER["PHP_SELF"].'>
            <input type=hidden name=wijzigen value=1>
            <input type=hidden name=klant_id value='
.$rij['id'].'>
            <table border=0 >'
;
            echo '<tr><td>Notitie </td><td><textarea name=notitie cols=40 rows=3></textarea>';
            echo '</td>';
            echo '<tr><td><input type=submit value=Toevoegen><input type="button" value="Vorige pagina" onclick="history.back()" />
            </td></tr></table>
             </form>'
;
        }
else{
         $date = date('d-m-Y, H-i-s');
         $query=  "INSERT INTO notities (klant_id, notitie, notitie_datum)";
         $query .= "VALUES ('";
          $query .= $_GET['id'] ."', '" ;
         $query .= $_POST["notitie"] ."', '" ;
         $query .= $date ."')" ;
         $result = mysql_query($query, $db) or die ("FOUT: " . mysql_error());
         'De notitie is toegevoegd klik <a href="index.php">hier</a> om naar het hoofdmenu te gaan.';
    }

?>
 
Hendrik

hendrik

24/03/2006 17:52:00
Quote Anchor link
ik include dus toevoegen_notitie.php (de code) in notities.php waar de id=2 oid komt te staan. en dat werkt niet

als ik direct naar toevoegen_notitie.php?id=2 ga dan werkt het wel :s

t mut niet gekker wurde x)
 
Hendrik

hendrik

24/03/2006 18:02:00
Quote Anchor link
ok hij doet het :)

Oh nee de date wordt nog niet goed weg gezet (now ik weet ga ik uitzoeken) en de ID wordt niet mee genomen :s naja iig van die eerste error af kzal weer verder proberne suggesties zijn nog altijd welkom hehe

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
<?php
    include "inc_connect_mysql.inc.php";
    
    if(empty($_POST['wijzigen'])){ ?>

            <form name=klanten method=POST action="<?php $_SERVER["PHP_SELF"]?>">
            <input type=hidden name=wijzigen value="1">
            <input type=hidden name=klant_id value="<?php $_GET['id'] ?>">
            <table border="0">
            <tr><td>Notitie </td><td><textarea name=notitie cols=40 rows=3></textarea>
            </td>
            <tr><td><input type=submit value=Toevoegen><input type="button" value="Vorige pagina" onclick="history.back()" />
            </td></tr></table>
             </form>
<?php
        }else{
        $date = date('d-m-Y, H-i-s');
        
        $query = "INSERT INTO notities (klant_id, notitie, notitie_datum)";
        $query .= "VALUES ('";
        $query .= $_POST["klant_id"] ."', '" ;
        $query .= $_POST['notitie'] ."', '" ;
        $query .= $date  ."')";
        $result = mysql_query($query, $db) or die ("FOUT: " . mysql_error());
        
        echo 'De notitie is toegevoegd klik <a href="index.php">hier</a> om naar het hoofdmenu te gaan.';
    }

?>
Gewijzigd op 24/03/2006 18:09:00 door hendrik
 
Hendrik

hendrik

24/03/2006 18:26:00
Quote Anchor link
halleluja kan geen quotes en echo's meer zien maar hier istie dan (echt waar) werkende voor de nieuwsgierige mee lezer :)

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
<?php
    include "inc_connect_mysql.inc.php";
    
    if(empty($_POST['wijzigen'])){ ?>

            <form name="klanten" method="POST" action="<?php $_SERVER["PHP_SELF"]?>">
            <input type="hidden" name="wijzigen" value="1">
            <input type="hidden" name="klant_id" value="<?PHP echo $_GET["id"]; ?>">
            <table border="0">
            <tr><td>Notitie </td><td><textarea name="notitie" cols=40 rows=3></textarea>
            </td>
            <tr><td><input type="submit" value="Toevoegen"><input type="button" value="Vorige pagina" onclick="history.back()" />
            </td></tr></table>
             </form>
<?php
        }else{
        $date = date('Y-m-d-H-i-s');
        
        $query = "INSERT INTO notities (klant_id, notitie, notitie_datum)";
        $query .= "VALUES ('";
        $query .= $_POST["klant_id"] ."', '" ;
        $query .= $_POST['notitie'] ."', '" ;
        $query .= $date  ."')";
        $result = mysql_query($query, $db) or die ("FOUT: " . mysql_error());
        
        echo 'De notitie is toegevoegd klik <a href="index.php">hier</a> om naar het hoofdmenu te gaan.';
    }

?>
Gewijzigd op 24/03/2006 18:37:00 door hendrik
 



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.