Wat moet ik er mee doen?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Young Roger

Young Roger

14/05/2006 15:45:00
Quote Anchor link
CREATE TABLE `poll_antwoorden` (
`id` smallint(4) NOT NULL auto_increment,
`pid` smallint(4) NOT NULL default '0',
`antwoord` varchar(255) NOT NULL default '',
`votes` int(7) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM ;

CREATE TABLE `poll_ipadres` (
`id` smallint(2) NOT NULL auto_increment,
`pollid` smallint(4) NOT NULL default '0',
`ipadres` varchar(20) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM ;

CREATE TABLE `poll_vragen` (
`id` int(4) NOT NULL auto_increment,
`vraag` varchar(255) NOT NULL default '',
`dag` int(2) NOT NULL default '0',
`maand` int(2) NOT NULL default '0',
`jaar` int(4) NOT NULL default '0',
`votes` smallint(4) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM ;


Wat is dit?! En wat moet ik ermee.. ? Ik wil een poll maken..

Gr. rootje
 
PHP hulp

PHP hulp

16/11/2024 20:46:58
 
Cake Masher

Cake Masher

14/05/2006 15:47:00
Quote Anchor link
Dat zijn DataBase tabellen waar alle informatie in word opgeslaagen.. vul in je script je DBpass, user locatie en name en zet die tabellen in je Database.. dan werkt je script.. anders niet
 
Young Roger

Young Roger

14/05/2006 16:17:00
Quote Anchor link
Ja maar waar moet ik die Tables invoeren? Ik gebruik PHPMyAdmin en ik heb gevonden waar je TABLES aankan maken maar wat moet ik daar PRECIES intypen?

Er staat iets van Naam: ... en Number of Fields: ...

Ik heb gewoon een database aangemaakt die poll heet.
Gewijzigd op 01/01/1970 01:00:00 door Young Roger
 
Leo

Leo

14/05/2006 16:21:00
Quote Anchor link
linksboven open je sql venster en voer je deze 3 uit, en klaar! (bij die 5 incoontjes waar sql staat)

Suc6!

Edit: dus gewoon kopiëren en plakken in dat veld en uitvoeren ;) (1 voor 1 of alle 3 tegelijk maakt niet uit)
Gewijzigd op 01/01/1970 01:00:00 door Leo
 
Young Roger

Young Roger

14/05/2006 16:22:00
Quote Anchor link
Oke, allemaal tegelijk? Of 1 voor 1?
 
Leo

Leo

14/05/2006 16:24:00
Quote Anchor link
Maakt niet uit, het zijn gewoon 3 sql's en die voert hij gewoon achter elkaar uit ;)
Gewijzigd op 01/01/1970 01:00:00 door Leo
 
Young Roger

Young Roger

14/05/2006 16:25:00
Quote Anchor link
Oke tnx! Ik heb het gedaan nu komt er te staan:
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
Uw SQL-query is succesvol uitgevoerd.
SQL-query: CREATE TABLE `poll_ipadres` (
`id` smallint( 2 ) NOT NULL AUTO_INCREMENT ,
`pollid` smallint( 4 ) NOT NULL default '0',
`ipadres` varchar( 20 ) NOT NULL default '',
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;# MySQL gaf een lege resultaat set terug (0 rijen).
CREATE TABLE `poll_vragen` (
`id` int( 4 ) NOT NULL AUTO_INCREMENT ,
`vraag` varchar( 255 ) NOT NULL default '',
`dag` int( 2 ) NOT NULL default '0',
`maand` int( 2 ) NOT NULL default '0',
`jaar` int( 4 ) NOT NULL default '0',
`votes` smallint( 4 ) NOT NULL default '0',
PRIMARY KEY ( `id` )
) TYPE = MYISAM ;# MySQL gaf een lege resultaat set terug (0 rijen).



Klopt dit gewoon :-D? Zou fijn zijn! :D
 
Young Roger

Young Roger

14/05/2006 16:42:00
Quote Anchor link
Ooh, nu heb ik de poll geinstalleerd. Komt er ineens dit te staan

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\wamp\www\xpoll\poll.php on line 81

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\wamp\www\xpoll\poll.php on line 81

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\xpoll\poll.php on line 83
Er is nog geen poll aangemaakt!


Wat betekent dit dan weer ?:S
 
Hipska BE

Hipska BE

14/05/2006 16:44:00
Quote Anchor link
ja hoor! waarom niet?

0 rijen wil zeggen dat je tabel nog leeg is
 
Young Roger

Young Roger

14/05/2006 16:50:00
Quote Anchor link
Oke, maar nu heb ik een poll toegevoegd via phpadmin.php nu hoort de poll dan in poll.php te staan denk ik.. [Er zijn maar 2 bestanden] maar als ik poll.php open komt er dit te staan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\wamp\www\xpoll\poll.php on line 81

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\wamp\www\xpoll\poll.php on line 81

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\xpoll\poll.php on line 83
Er is nog geen poll aangemaakt!

En voor de duidelijkheid, ik heb WEL een poll aangemaakt.. en er staat ook zoiets:

Access denied for user 'ODBC'@'localhost' (using password: NO)

Maar mijn username voor alle databases heeft is root, en ik gebruik wel een password :S
 
Hipska BE

Hipska BE

14/05/2006 16:52:00
Quote Anchor link
ja hoor! waarom niet?

0 rijen wil zeggen dat je tabel nog leeg is
 
Frank -

Frank -

14/05/2006 17:10:00
Quote Anchor link
Quote:
`dag` int(2) NOT NULL default '0',
`maand` int(2) NOT NULL default '0',
`jaar` int(4) NOT NULL default '0',

Geen idee wat je hier in wilt zetten, maar is natuurlijk geen datum! Een datum zet je in een DATE en nooit en te nimmer in 3 velden van het type INT. Probeer maar eens te gaan rekenen met een datum die in een INT staat, dat wordt een hele klus, het kan zelfs onmogelijk zijn.

Verder is
Quote:
`id` smallint(2) NOT NULL auto_increment,
een risico. Voor je het weet heb je het aantal mogelijkheden verbruikt en lopen je queries in de soep. Gebruik voor een id altijd een INT(11), dan zul je nooit tegen dit soort domme beperkingen aanlopen.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Young Roger

Young Roger

14/05/2006 17:15:00
Quote Anchor link
Het is een script van phphulp.nl [De zoveelste Poll] en in het voorbeeld doet ie het wel, dus het lijkt me niet onmogelijk iig..
 
Emile Verbunt

Emile Verbunt

14/05/2006 19:38:00
Quote Anchor link
zet dan die tabellen in je database en zet het script op je site en klaar ben je.
en ga eerst kijken naar tutorials(ook andere sites) of ze er zijn en stel dan zo'n vraag ;)
 
Frank -

Frank -

14/05/2006 20:04:00
Quote Anchor link
rogier:
Het is een script van phphulp.nl [De zoveelste Poll] en in het voorbeeld doet ie het wel, dus het lijkt me niet onmogelijk iig..
Misschien dat je met jouw toepassingen niet hoeft te rekenen en vergelijken met de datum, maar probeer jij bijvoorbeeld maar eens uit te zoeken welke records op een vrijdag zijn aangemaakt. Dit is met jouw datamodel vrijwel onmogelijk, er komen in elk geval heel wat regels (honderden?) php-code aan te pas. Wanneer je een DATE gebruikt, komt er niet 1 regel php-code aan te pas... Wat zou handiger/sneller zijn?
 
Jan Koehoorn

Jan Koehoorn

14/05/2006 20:34:00
Quote Anchor link
@Frank: ff advocaat van de duivel spelen ;-)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
    $dag
= 11;
    $maand = 5;
    $jaar = 2006;
    
    $timestamp = strtotime (' . $dag . '-' . $maand . '-' . $jaar . ');
    $dagnummer = strftime ('%w', $timestamp);
    echo $dagnummer;
?>


@ andere forumleden: voor de duidelijkheid: dit is een geintje om te kijken of het echt honderden regels code zou kosten. Nog altijd is het vele malen beter om MySQL het rekenwerk te laten doen! Ga maar na: de code uit mijn voorbeeld zou ELKE keer uitgevoerd moeten worden in de while loop waarin je je resultaten fetcht.
 
Frank -

Frank -

14/05/2006 20:47:00
Quote Anchor link
@Jan: !@#$%^&*

Het aantal regels valt inderdaad wel mee, het aantal keren dat je de loop moet doorlopen (die hier overigens nog ontbreekt, evenals de query om alle gegevens op te halen) valt zeker niet mee. Je moet er toch niet aan denken dat je 10.000 records (of meer...) in je database hebt staan. Dit kan dan zo maar een time-out opleveren.

Een andere oplossing is om een hele serie valide vrijdag-datums aan te maken in php en dan de queries uit te gaan voeren. Maar goed, dat zijn per jaar 52 queries en zal dus ook niet overdreven snel zijn.

Het is gewoon dom om bij datums geen gebruik te maken van een DATE of DATETIME. Die zijn er voor gemaakt. Maar daar zijn we het zeker over eens! ;)
 
Jan Koehoorn

Jan Koehoorn

14/05/2006 20:53:00
Quote Anchor link
@Frank: absoluut mee eens. Voor de volledigheid nog even hoe simpel het met MySQL en een DATE veld is:

SELECT veld1, veld2, veld2
FROM tabel
WHERE WEEKDAY(datum) = 4

(De MySQL functie WEEKDAY geeft maandag het cijfer 0)

En klaar ben je :-)
 
Frank -

Frank -

14/05/2006 21:02:00
Quote Anchor link
@Jan: Mijn voorkeur gaat uit naar DAYOFWEEK(date)

Returns the weekday index for date (1 = Sunday, 2 = Monday, …, 7 = Saturday). These index values correspond to the ODBC standard.

mysql> SELECT DAYOFWEEK('1998-02-03');
-> 3

Dit levert namelijk 1 t/m 7 op, dat vind ik een logischer telling. Ik heb eens lopen klooien met een WEEKDAY(), maar had ik last van die 0 i.v.m. een vergelijking. Exacte achtergrond is me ontschoten, maar sinds dat probleem ben ik over of DAYOFWEEK().
 
Jan Koehoorn

Jan Koehoorn

14/05/2006 21:22:00
Quote Anchor link
@Frank: DAYOFWEEK levert inderdaad een logischer telling op.

Ik heb net even zitten testen met een paar onzin datums, zoals '2006-02-31' en dan retourneert MySQL keurig NULL. Als je dus niet zeker weet of je een valide datum hebt kun je dat ook nog checken via MySQL.
 
Emile Verbunt

Emile Verbunt

15/05/2006 18:52:00
Quote Anchor link
@Frank en Jan
zijn we niet een beetje off-topic aan het raken ?
 



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.