Rare SQL syntax error!

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wouter

Wouter

07/10/2009 21:45:00
Quote Anchor link
Hallo, PHPhulp

Ik dus deze simpele functie:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?
function AddMatch($team1, $punten1, $kd1, $team2, $punten2, $kd2) {
    $sql = "UPDATE poule SET punten=" . $punten1 . ", kd=" . $kd1 . " WHERE team='" . $team1 . "'";
    $query = mysql_query($sql) or die("Error at AddMatch(Team 1)(): " . mysql_error());
    
    $sql2 = "UPDATE poule SET punten=" . $punten2 . ", kd=" . $kd2 . " WHERE team='" . $team2 . "'";
    $query2 = mysql_query($sql2) or die("Error at AddMatch(Team 2)(): " . mysql_error());
}

?>


Maar ik krijg deze foutmelding:

Error at AddMatch(Team 2)(): 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 ' kd=6 WHERE team='Joep & Berend'' at line 1

De 2 queries zijn gewoon identiek. En de inhoud heeft dezelfde structuur. Enige verklaring? Alvast bedankt!
Gewijzigd op 01/01/1970 01:00:00 door Wouter
 
PHP hulp

PHP hulp

06/11/2024 03:54:42
 
- SanThe -

- SanThe -

07/10/2009 21:51:00
Quote Anchor link
Echo de query eens.
 
Wouter

Wouter

07/10/2009 21:53:00
Quote Anchor link
Hoe bedoel je?
 
Pieter ten Boomen

Pieter ten Boomen

07/10/2009 21:54:00
Quote Anchor link
echo "$query";
 
- SanThe -

- SanThe -

07/10/2009 21:56:00
Quote Anchor link
Jelmer schreef op 07.10.2009 21:54:
echo "$query";

Vanwaar al die quotes?

En het gaat om $sql2.
Dus echo $sql2; zou logischer zijn.
 
Kevin van der Burgt

kevin van der Burgt

07/10/2009 21:56:00
Quote Anchor link
of echo $sql.": ".$query."<br/>."$sql.": ".$query2;
 
Pieter ten Boomen

Pieter ten Boomen

07/10/2009 21:58:00
Quote Anchor link
had nog niet zn hele post gelezen dus wist niet welke hij wilde, en zo heb ik t geleerd... word hier ondertussen helemaal gek van die """""
 
Wouter

Wouter

07/10/2009 21:59:00
Quote Anchor link
UPDATE poule SET punten=, kd=6 WHERE team='Joep & Berend'
Ik zie de fout al, bedankt! ;-)

EDIT: Had in de form een fout gemaakt. Er was 2 keer punten1
Gewijzigd op 01/01/1970 01:00:00 door Wouter
 
Jesper Diovo

Jesper Diovo

07/10/2009 22:08:00
Quote Anchor link
@Jelmer: is het je fout aangeleerd dan. Om een variabele horen geen quotes. Je hoort variabelen juist buiten quotes te halen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
echo "$query"; // is dus fout
echo $query; // is dus goed

echo "Hoi ik ben $naam, $leeftijd jaar oud. $groet"; // fout
echo "Hoi ik ben ".$naam.", ".$leeftijd." jaar oud. ".$groet; // goed

md5("$string"); // fout
md5($string); // goed
?>
 
Pieter ten Boomen

Pieter ten Boomen

07/10/2009 22:50:00
Quote Anchor link
Oke, dan weet ik dat, maar heeft dat ook een reden ofzo?
 
- Ariën  -
Beheerder

- Ariën -

07/10/2009 23:01:00
Quote Anchor link
Jelmer schreef op 07.10.2009 22:50:
Oke, dan weet ik dat, maar heeft dat ook een reden ofzo?

Logica en snelheid en leesbaarheid.
 
Wouter

Wouter

07/10/2009 23:02:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
$string
= "string"'

echo "$string"; // Output: $string

?>


Toch?
 
- SanThe -

- SanThe -

07/10/2009 23:31:00
Quote Anchor link
Wouter schreef op 07.10.2009 23:02:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?
$string
= "string"'

echo "$string"; // Output: $string

?>


Toch?

Heb je alles wel doorgelezen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$string
= "string";

echo $string; // Output: string // correct
echo "$string"; // Output: string // niet aanbevolen maar mag wel
echo '$string'; // Output: $string // niet geparst
?>
 
Wouter

Wouter

07/10/2009 23:35:00
Quote Anchor link
Laat maar.. ;P Dacht altijd dat het niet kon.
 



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.