abonnement Unibet Coolblue Bitvavo
  vrijdag 14 november 2008 @ 10:33:42 #201
137690 Pizzahut
Het Bora Bora Gebergte
pi_63214395
Vraagje voor MySQL:
Ik heb een MySQL query browser van de officiële website.
Nu gebruik ik die heel veel voor localhost wat ook prima werkt.
Maar nu wil ik ook een externe host, bij voorkeur dus mijn eigen website eraan toevoegen.
Kan iemand mij vertellen wat ik moet invullen bij host? (waar normaal localhost staat).
ik heb dus al http://dbadmin.one.com gedaan als mijn website.
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
pi_63214564
quote:
Op vrijdag 14 november 2008 10:33 schreef Pizzahut het volgende:
Vraagje voor MySQL:
Ik heb een MySQL query browser van de officiële website.
Nu gebruik ik die heel veel voor localhost wat ook prima werkt.
Maar nu wil ik ook een externe host, bij voorkeur dus mijn eigen website eraan toevoegen.
Kan iemand mij vertellen wat ik moet invullen bij host? (waar normaal localhost staat).
ik heb dus al http://dbadmin.one.com gedaan als mijn website.
MySQL draait gewoon op een server waarmee met een server adres/IP, gebruikersnaam en wachtwoord op ingelogd dient te worden. In plaats van localhost dus gewoon de MySQL/database server of het IP adres daarvan, en uiteraard de correcte gebruikersnaam en wachtwoord voor die server, zou genoeg moeten zijn.
  vrijdag 14 november 2008 @ 10:42:03 #203
137690 Pizzahut
Het Bora Bora Gebergte
pi_63214643
quote:
Op vrijdag 14 november 2008 10:39 schreef Tuvai.net het volgende:

[..]

MySQL draait gewoon op een server waarmee met een server adres/IP, gebruikersnaam en wachtwoord op ingelogd dient te worden. In plaats van localhost dus gewoon de MySQL/database server of het IP adres daarvan, en uiteraard de correcte gebruikersnaam en wachtwoord voor die server, zou genoeg moeten zijn.
Ik heb nu dit gedaan:
Host: http://dbadmin.one.com <- link naar mijn database
Gebr.: mijn gebruikersnaam
WW: mijn wachtwoord

Host: http://puddingbroodje.nl <- link naar mijn website
Gebr.: mijn gebruikersnaam
WW: mijn wachtwoord

beide werken niet. Standaart staat de poort op 3308 ofzo, moet dit anders staan?
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
pi_63214661
quote:
Op vrijdag 14 november 2008 10:31 schreef Tuvai.net het volgende:

[..]

Waarom zo omslachtig? Je kunt toch ook al door middel van DAY() / MONTH() / YEAR() MySQL functies in je query de records ophalen die je moet hebben?
Dat kan.
Echter de query doet nu wat het moet doen, daar kom ik later op.

Het probleem zit nu in de array
ne okuyon, bokmu var?
pi_63214776
quote:
Op vrijdag 14 november 2008 10:42 schreef Pizzahut het volgende:

[..]

Ik heb nu dit gedaan:
Host: http://dbadmin.one.com <- link naar mijn database
Gebr.: mijn gebruikersnaam
WW: mijn wachtwoord

Host: http://puddingbroodje.nl <- link naar mijn website
Gebr.: mijn gebruikersnaam
WW: mijn wachtwoord

beide werken niet. Standaart staat de poort op 3308 ofzo, moet dit anders staan?
Je MySQL server adres is NIET hetzelfde als het adres van de betreffende website / DB admin panel. Mijn websites draaien bijvoorbeeld op website.nl, terwijl de achterliggende databaseserver altijd dbserver.website.nl is.
quote:
Op vrijdag 14 november 2008 10:42 schreef saban het volgende:

[..]

Dat kan.
Echter de query doet nu wat het moet doen, daar kom ik later op.

Het probleem zit nu in de array
Dat snap ik, maar je hoeft helemaal niet met arrays te liggen kutten als je de corresponderende data al op haalt door middel van een goede query. Scheelt ook weer onnodig heen en weer geslinger en performance aangezien je op die manier ook niet eerst een boel records op haalt waar je vervolgens toch niks tot weinig mee doet.
pi_63214916
quote:
Op vrijdag 14 november 2008 10:46 schreef Tuvai.net het volgende:

[..]

Je MySQL server adres is NIET hetzelfde als het adres van de betreffende website / DB admin panel. Mijn websites draaien bijvoorbeeld op website.nl, terwijl de achterliggende databaseserver altijd dbserver.website.nl is.
[..]

Dat snap ik, maar je hoeft helemaal niet met arrays te liggen kutten als je de corresponderende data al op haalt door middel van een goede query. Scheelt ook weer onnodig heen en weer geslinger en performance aangezien je op die manier ook niet eerst een boel records op haalt waar je vervolgens toch niks tot weinig mee doet.
Ik denk dat ik mijn probleem verkeerd hebt uitgelegd.
Met een for geef ik alle dagen van een maand weer, echter in die for moet ik checken of die datum voorkomt in de database. Ik kan dus bij iedere keer dat de for loopt wel een query uitvoeren om te checken of het voorkomt, maar dan moet ik dus per request 30 keer een query uitvoeren (30 dagen in een maand).

Dus ik dacht, ik haal eerst alle data uit de database, deze stop ik in een array. Vervolgens check ik in de for of de datum voorkomt in de array(database).
ne okuyon, bokmu var?
pi_63215050
quote:
Op vrijdag 14 november 2008 10:50 schreef saban het volgende:

[..]

Ik denk dat ik mijn probleem verkeerd hebt uitgelegd.
Met een for geef ik alle dagen van een maand weer, echter in die for moet ik checken of die datum voorkomt in de database. Ik kan dus bij iedere keer dat de for loopt wel een query uitvoeren om te checken of het voorkomt, maar dan moet ik dus per request 30 keer een query uitvoeren (30 dagen in een maand).

Dus ik dacht, ik haal eerst alle data uit de database, deze stop ik in een array. Vervolgens check ik in de for of de datum voorkomt in de array(database).
Als je dus puur wilt controleren welke dagen in een gegeven maand voorkomen, is het volgende al voldoende:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$maand
=11;
$jaar=2008;

// Lege array() aanmaken
$maandenDieVoorkomenInDezeMaand=array();

// Query aanmaken die aan de hand van $maand en $jaar alle verschillende, voorkomende dagen uit tabel 'dataTabel' op haalt
$query=mysql_query("SELECT DISTINCT DAY(datumKolom) AS dag FROM dataTabel WHERE MONTH(datumKolom) = " $maand " AND YEAR(datumKolom) = " $jaar);

// Door de geretourneerde records heen loop`en
while($rij=mysql_fetch_array($query)){

    
// Van alle records die geretourneerd worden de daadwerkelijke dag naar de eerder aangemaakte array() wegschrijven
    
array_push($maandenDieVoorkomenInDezeMaand$rij[dag]);
}
?>




[ Bericht 11% gewijzigd door Tuvai.net op 14-11-2008 11:17:44 ]
pi_63215147
quote:
Op vrijdag 14 november 2008 10:55 schreef Tuvai.net het volgende:

[..]

Als je dus puur wilt controleren welke dagen in een gegeven maand voorkomen, is het volgende al voldoende:
[ code verwijderd ]

Nu heb je een array met wat er in de database staat, maar de array moet buiten de while ook nog bruikbaar zijn.
ne okuyon, bokmu var?
  vrijdag 14 november 2008 @ 10:59:57 #209
137690 Pizzahut
Het Bora Bora Gebergte
pi_63215165
quote:
Op vrijdag 14 november 2008 10:46 schreef Tuvai.net het volgende:

[..]

Je MySQL server adres is NIET hetzelfde als het adres van de betreffende website / DB admin panel. Mijn websites draaien bijvoorbeeld op website.nl, terwijl de achterliggende databaseserver altijd dbserver.website.nl is.
dus is het deze:
Host: http://dbadmin.one.com <- link naar mijn database
Gebr.: mijn gebruikersnaam
WW: mijn wachtwoord

maar die doet het ook niet.
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
pi_63215203
quote:
Op vrijdag 14 november 2008 10:59 schreef saban het volgende:

[..]

Nu heb je een array met wat er in de database staat, maar de array moet buiten de while ook nog bruikbaar zijn.
Dat is de array $maandenDieVoorkomenInDezeMaand toch ook? In de while() loop wordt 'ie enkel gevuld met de gevonden dagen; daarna kun je doen met array $maandenDieVoorkomenInDezeMaand wat je wilt (lees: vergelijken).
pi_63215226
quote:
Op vrijdag 14 november 2008 10:59 schreef Pizzahut het volgende:

[..]

dus is het deze:
Host: http://dbadmin.one.com <- link naar mijn database
Gebr.: mijn gebruikersnaam
WW: mijn wachtwoord

maar die doet het ook niet.
Nee, http://dbadmin.one.com is niet je MySQL server, maar gewoon het adres/een subdomain waar PHPMyAdmin op draait.
  vrijdag 14 november 2008 @ 11:06:27 #212
137690 Pizzahut
Het Bora Bora Gebergte
pi_63215350
quote:
Op vrijdag 14 november 2008 11:02 schreef Tuvai.net het volgende:

[..]

Nee, http://dbadmin.one.com is niet je MySQL server, maar gewoon het adres/een subdomain waar PHPMyAdmin op draait.
zodra ik naar http://phpmyadmin.mijnwebsite.nl ga, wordt ik doorverwezen naar dbadmin.one.com
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
pi_63215359
quote:
Op vrijdag 14 november 2008 11:01 schreef Tuvai.net het volgende:

[..]

Dat is de array $maandenDieVoorkomenInDezeMaand toch ook? In de while() loop wordt 'ie enkel gevuld met de gevonden dagen; daarna kun je doen met array $maandenDieVoorkomenInDezeMaand wat je wilt (lees: vergelijken).
Cool Thanks.
ne okuyon, bokmu var?
pi_63215589
quote:
Op vrijdag 14 november 2008 11:06 schreef Pizzahut het volgende:

[..]

zodra ik naar http://phpmyadmin.mijnwebsite.nl ga, wordt ik doorverwezen naar dbadmin.one.com
Dat kan, maar verandert de kwestie niet. Je MySQL server is iets heel anders dan een adres waar je je database met PhpMyAdmin beheert. Je hosting provider kan je vast wel vertellen wat je MySQL server adres is. Afhankelijk van de PhpMyAdmin versie kun je daar in ook zelf je MySQL server adres uit halen zodra je bent ingelogd.
pi_63215701
Nu we toch bezig zijn :9

Ik heb de volgende 2 arrays ($array_datum en $array_naam):
1
2
3
4
5
6
7
8
9
10
11
12
Array
(
    [0] => 1-11-2008
    [1] => 6-11-2008
    [2] => 10-11-2008
)
Array
(
    [0] => foo
    [1] => foo
    [2] => bar
)


Hoe kan ik bijvoorbeeld het volgende echo'n:
foo heeft gewerkt op 1-11-2008
of
bar heeft gewerkt op 10-11-2008
ne okuyon, bokmu var?
pi_63215877
quote:
Op vrijdag 14 november 2008 11:17 schreef saban het volgende:
Nu we toch bezig zijn

Ik heb de volgende 2 arrays ($array_datum en $array_naam):
[ code verwijderd ]

Hoe kan ik bijvoorbeeld het volgende echo'n:
foo heeft gewerkt op 1-11-2008
of
bar heeft gewerkt op 10-11-2008
1
2
3
4
5
6
7
8
9
10
<?php
$data
=array("1-1-2008""2-4-2008""2-5-2008");
$medewerkers=array("Piet""Jan""Klaas");

// Weergeef 'Jan heeft gewerkt op 1-1-2008'
echo $medewerkers[1] . ' heeft gewerkt op ' $data[0];

// Weergeef 'Klaas heeft gewerkt op 2-4-2008'
echo $medewerkers[2] . ' heeft gewerkt op ' $data[1];
?>


Een array() bestaat uit een aantal waardes. Elke waarde in een array krijgt altijd een uniek nummertje, genaamd een index. Stel ik heb de volgende array:

1
2
3
<?php
$bla 
= array("appel""peer""Sinaasappel""Ananas");
?>


Dan bestaat deze array respectievelijk uit de volgende indexes met daaraan hun corresponderende waardes:

1
2
3
4
[0] = appel
[1] = peer
[2] = Sinaasappel
[3] = Ananas


Uiteraard altijd beginnend bij 0.
  vrijdag 14 november 2008 @ 11:24:56 #217
137690 Pizzahut
Het Bora Bora Gebergte
pi_63215925
quote:
Op vrijdag 14 november 2008 11:13 schreef Tuvai.net het volgende:

[..]

Dat kan, maar verandert de kwestie niet. Je MySQL server is iets heel anders dan een adres waar je je database met PhpMyAdmin beheert. Je hosting provider kan je vast wel vertellen wat je MySQL server adres is. Afhankelijk van de PhpMyAdmin versie kun je daar in ook zelf je MySQL server adres uit halen zodra je bent ingelogd.
snap ik, alleen weet ik de link niet. even achteraan gaan.
Disturbed Mind
Het leven: Soms ben je de duif, soms het standbeeld.
pi_63216054
quote:
Op vrijdag 14 november 2008 11:24 schreef Pizzahut het volgende:

[..]

snap ik, alleen weet ik de link niet. even achteraan gaan.
Bij mijn PhpMyAdmin is het MySQL server adres en poortnummer weergeven in de titelbalk van mijn browser. Kijk daar anders eens.
pi_63216115
Thanks Tuvai, ik wilde het net een beetje anders hebben.

Waarom werkt dit niet?
1
2
3
4
5
6
7
<?php
$t 
array_keys($array_datum'10-11-2008');
$q $t['0'];
echo 
$array_naam['$q']; // geeft niks weer (moet bar weergeven)
echo $q// geeft 2 weer
echo $array_naam['2']; // geeft bar weer
?>
ne okuyon, bokmu var?
pi_63216284
quote:
Op vrijdag 14 november 2008 11:30 schreef saban het volgende:
Thanks Tuvai, ik wilde het net een beetje anders hebben.

Waarom werkt dit niet?
[ code verwijderd ]
array_keys() is een functie die zelf een array maakt van de keys (oftewel de indexes), van een opgegeven array. :) Zie http://nl2.php.net/manual/en/function.array-keys.php .

Overigens weergeeft het volgende stukje uiteraard niks:
1
2
3
<?php
echo $array_naam['$q'];
?>


Omdat je daadwerkelijk een item uit $array_naam wilt parsen die als key/index '$q' heeft; dit kan natuurlijk niet daar dit een key/indexnummer moet zijn. Dit zou dan wel moeten werken:

1
2
3
<?php
echo $array_naam[$q];
?>
pi_63216365
quote:
Op vrijdag 14 november 2008 11:35 schreef Tuvai.net het volgende:

[..]

array_keys() is een functie die zelf een array maakt van de keys (oftewel de indexes), van een opgegeven array. Zie http://nl2.php.net/manual/en/function.array-keys.php .

Overigens weergeeft het volgende stukje uiteraard niks:
[ code verwijderd ]

Omdat je daadwerkelijk een item uit $array_naam wilt parsen die als key/index '$q' heeft; dit kan natuurlijk niet daar dit een key/indexnummer moet zijn. Dit zou dan wel moeten werken:
[ code verwijderd ]
Damn I fuckin love you
ne okuyon, bokmu var?
pi_63216771
quote:
Op vrijdag 14 november 2008 @ 11:37 schreef saban het volgende:

[..]

Damn I fuckin love you :D
Kun je die arrays niet beter combineren?

1
2
3
4
5
6
7
<?php
$combiarray
['1-11-2008'] => 'foo';
$combiarray['6-11-2008'] => 'foo';
$combiarray['10-11-2008'] => 'bar';

echo 
$combiarray[datum];
?>

Is afhankelijk van wat je er mee wilt, maar misschien een idee.
  vrijdag 14 november 2008 @ 11:53:21 #223
187069 slacker_nl
Sicko pur sang
pi_63216948
quote:
Op vrijdag 14 november 2008 11:30 schreef saban het volgende:
Thanks Tuvai, ik wilde het net een beetje anders hebben.

Waarom werkt dit niet?
[ code verwijderd ]
'' (single quotes) expand een value niet, "" (doubel quotes) wel.

Doe maar eens:

1
2
3
4
5
<?php
echo $bla;
echo 
"$bla";
echo 
'$bla';
?>


Dit is overigens zo in bijna alle talen.
In theory there is no difference between theory and practice. In practice there is.
pi_63244384
Ik wil contracten opslaan in mijn mysql tabel contracten, in de vorm van timestamps. Nu ga ik bij het inserten van de contracten controleren of er geen periode een dubbel contract bestaat.
Als ik dus een contract afsluit van 15-dec-08 tot 15-jun-09, mag er geen nieuw contract ingevoerd worden die de periode op welke manier ook overlapt. Dus geen
- overlap aan het begin van het bestaande contract
- overlap aan het einde van het bestaande contract
- overlap door volledig binnen de periode te vallen (01-jan-09 / 01-mei-09)
- exact gelijke overlap. (f5-en)

mijn tabel contracten bevat in ieder geval de volgende eigenschappen:
- datum_start
- datum_einde
- klant_id

nu heb ik de volgende query opgesteld, maar deze werkt nog niet zoals hij zou moeten werken.


1
2
3
<?php
$query 
"SELECT * FROM contracten WHERE datum_start >= ".$start." AND datum_start <= ".$start." AND datum_einde >= ".$eind." AND datum_einde <= ".$eind." AND klant_id = ".$klant_id.";";
?>


hoe maak ik hem juist werkend?
Amsterdam, stad van hash en coke,
Waar de vrouwen zich vrouwelijk gedragen..
En de mannen ook..
  zaterdag 15 november 2008 @ 15:39:23 #225
75592 GlowMouse
l'état, c'est moi
pi_63245055
Je hebt overlap als de startdatum of de einddatum van het nieuwe contract ligt tussen de start- en einddatum van een bestaand contract. Dat is equivalent met [de startdatum van het nieuwe contract ligt tussen de start- en einddatum van een bestaand contract] of [de einddatum van het nieuwe contract ligt tussen de start- en einddatum van een bestaand contract].
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')