de melding was dat ik de syntax "near SET delete = 'yes' WHERE ID = 13"quote:Op zaterdag 19 januari 2008 11:43 schreef SuperRembo het volgende:
[..]
Je had ook even de query die uitgevoerd wordt aan het die() statement kunnen toevoegen, dan weet je tenminste welke query precies fout gaat.
'delete' is een reserved word, dus als je die als kolomnaam gebruikt, dan moet je er `back ticks` omheen zetten. Ik denk dat 't ook niet echt de juiste naam voor de kolom is ('deleted' zou waarschijnlijk beter zijn). En een varchar veld gebruiken om er 'yes' of 'no' in te zetten is niet handig, daar kan je beter een tinyint voor gebruiken met 1 of 0.
fetchItemID() haalt het itemid op uit de url ($_GET['itemid']) en aan de url te zien klopt het itemid gewoon en aan de mysql_error te zien ookquote:Op zaterdag 19 januari 2008 11:01 schreef Farenji het volgende:
[..]
Tja het zou handig zijn om te weten wat er uit die functie fetchItemID() komt. Waarschijnlijk komt daar iets anders dan je verwacht. Print de resulterende query eens naar stderr zodat je ziet wat er precies gebeurt.
Rare functie overigens, zo zonder params enzo, heb je maar 1 item tegelijk in je programma ofzo?
ENUM 'yes', 'no'quote:Op zaterdag 19 januari 2008 11:12 schreef Scorpie het volgende:
wat voor veld is delete? is dat een boolean of een varchar?
ikzelf heb dus ook ENUM gekozen maar dan met 'yes', 'no' om de opties logischer te houden..quote:Op zaterdag 19 januari 2008 12:11 schreef Xcalibur het volgende:
[..]
In dat geval kan je weer beter een ENUM(1,0) gebruiken volgens mij
O ja, MySQL heeft enums. Daar denk ik niet zo snel aan omdat SqlServer ze niet heeft.quote:Op zaterdag 19 januari 2008 12:13 schreef MuRKie het volgende:
[..]
de melding was dat ik de syntax "near SET delete = 'yes' WHERE ID = 13"
het veld is trouwens geen VARCHAR maar ENUM
gevoelsmatig is 1 / yes / true en 0 / no / false allemaal hetzelfde voor mijquote:Op zaterdag 19 januari 2008 12:31 schreef MuRKie het volgende:
ikzelf heb dus ook ENUM gekozen maar dan met 'yes', 'no' om de opties logischer te houden..
Het is veel beter om consequent 1 voor true te gebruiken, en 0 voor false. Dat maakt het veel logischer omdat PHP 0 ook als false ziet en 1 als true. "yes" en "no" worden door PHP allebei als true gezien.quote:Op zaterdag 19 januari 2008 17:24 schreef Xcalibur het volgende:
[..]
gevoelsmatig is 1 / yes / true en 0 / no / false allemaal hetzelfde voor mij
Maar ik reageerde op de TINYINT post, vandaar dat ik met de 1 / 0 kwam...
kan je die datum niet met php erin stoppen? met de date() functie? Ik heb werkelijk geen flauw idee hoe ik die unix date moet uitlezen..quote:Op zaterdag 19 januari 2008 20:05 schreef wobbel het volgende:
Ik zit met iets heel vaags waar ik niet echt uit kom hoe ik het op moet lossen....
Ik heb een tabel met wat velden: Ziet er zo uit:
Tabel BEZOEKERS
Wat
Datum
Ip
WAT - DATUM - IP
home - 1200769418 - 82.64.36.31
home - 1200356372 - 213.51.210.153
contact - 1200313598 - 199.121.10.192
(etc etc etc)
Nu zie je dat ik een UNIX timestamp (date ( "U" )) als datum...
Je bouwt de query dan bijvoorbeeld (zijn meerdere wegen naar Rome) zo op:quote:Op zaterdag 19 januari 2008 20:05 schreef wobbel het volgende:
Ik zit met iets heel vaags waar ik niet echt uit kom hoe ik het op moet lossen....
Ik heb een tabel met wat velden: Ziet er zo uit:
Tabel BEZOEKERS
Wat
Datum
Ip
WAT - DATUM - IP
home - 1200769418 - 82.64.36.31
home - 1200356372 - 213.51.210.153
contact - 1200313598 - 199.121.10.192
(etc etc etc)
Nu zie je dat ik een UNIX timestamp (date ( "U" )) als datum...
Maar hoe krijg ik nu een mooi overzichtje:
MAAND - VIEWS
Januari - en dan alle records die in januari valle
Februari - en dan alle records die in februari vallen
tot aan de huidige maand
aah kijk eens aan, daar heb ik wat meer aanquote:Op zaterdag 19 januari 2008 20:17 schreef Mordreth het volgende:
[..]
Je bouwt de query dan bijvoorbeeld (zijn meerdere wegen naar Rome) zo op:
select * from bezoekers where datum > AAAAAA and datum < BBBBB
Op de AAA plek zet je dan een unix timestamp van 1 februari neer (doormiddel van date: date(0,0,0,2,1,2008)
en op de plek van BBB zet je dus het einde van de maand neer.
Met order by datum kan je het dan netjes oplopend / aflopend ophalen.
quote:Op zaterdag 19 januari 2008 20:47 schreef Geqxon het volgende:
SELECT DISTINCT.
1 2 3 4 5 6 7 8 9 10 11 12 13 | $SQL_Name_Select = "SELECT DISTINCT Naam FROM Namen" $SQL_Name_Query = mysql_query ( $SQL_Name_Select ) or die ( $error->MySQL ( __FILE__, $SQL_Name_Insert, __LINE__ ) ); while ( $SQLData = mysql_fetch_array ( $SQL_Name_Query ) ) { echo $SQLData['Naam'] . "<br />"; } ?> |
1 |
quote:The ALL, DISTINCT, and DISTINCTROW options specify whether duplicate rows should be returned. If none of these options are given, the default is ALL (all matching rows are returned). DISTINCT and DISTINCTROW are synonyms and specify removal of duplicate rows from the result set.
Dus hij maakt er een array van? Maar dat was het al? Wat doet dit precies meer? Select WHERE id > 0 kan toch ook?quote:Op zaterdag 19 januari 2008 23:16 schreef Geqxon het volgende:
Het is geen functie, maar een optie die bij SELECT hoort.
[..]
Het is een optie van SELECT, waarbij je tegen SELECT zegt dat je enkel rijen met unieke waarden wilt.quote:Op zondag 20 januari 2008 02:04 schreef Flaccid het volgende:
[..]
Dus hij maakt er een array van? Maar dat was het al? Wat doet dit precies meer? Select WHERE id > 0 kan toch ook?
1 |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |