abonnement Unibet Coolblue Bitvavo
  zondag 8 maart 2009 @ 19:46:19 #151
3677 SuperRembo
Sinds 1998
pi_66835597
Je moet de [] even vervangen door ()
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_66836644
Dat gaat voor mij wel een klein probleem worden, want de functie preg_match_all zet alles tussen haakjes in de resultset. Is er nog een alternatief?
I hear thunder but there's no rain
this kind of thunder breaks walls and window panes
pi_66836853
is het dan niet

1src=.{0,10}\"(.{0,100}\.)(jpg|jpeg|gif|png)\" 


De if-constructie lijkt me verder goed.
pi_66837718
quote:
Op zondag 8 maart 2009 15:17 schreef GlowMouse het volgende:
jakees: de melding die je geeft heeft niets met de inhoud van $sql te maken. Je post dus veel te weinig code.

Doagere: misschien komt het omdat je bij @home zat, maar php-ondersteuning heb je op de webhost die je net gaf niet.
GlowMouse dit is me code:
1
2
3
4
$conn = mysql_connect("localhost", "root ","") or die(mysql_error());
$conn = mysql_select_db("zaalvoetbal", $conn) or die(mysql_error());
$sql = 'INSERT INTO `spelers` (`spelers_id`, `spelers_voornaam`, `spelers_achternaam`, `spelers_gsm`, `spelers_punten`) VALUES (\'\', \'aa\', \'bb\', \'cc\', \'0\');'; 
mysql_query($sql,$conn) or die (mysql_error());

Wanneer ik de vierde regel niet uitvoer krijg ik geen foutmelding. Wanneer ik dit wel doe dan krijg ik dus de foutmelding :
1Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in 
pi_66838275
heb je je wachtwoord gecensureerd, of is die echt blanco?
pi_66838977
quote:
Op zondag 8 maart 2009 20:55 schreef Xcalibur het volgende:
heb je je wachtwoord gecensureerd, of is die echt blanco?
ik ben nu alleen nog even lokaal aan het ontwikkelen. Dat wachtwoord verzet ik nog wel hoor ;-)
  zondag 8 maart 2009 @ 21:17:58 #157
3677 SuperRembo
Sinds 1998
pi_66839228
quote:
Op zondag 8 maart 2009 20:16 schreef KoekjesTwister het volgende:
Dat gaat voor mij wel een klein probleem worden, want de functie preg_match_all zet alles tussen haakjes in de resultset. Is er nog een alternatief?
preg_match geeft alle gematchte subpatterns terug, dus dat is geen probleem.
Je kan het subpattern wat je zoekt ook een naam geven, dan kan je 'm makkelijker uit de array vissen:
quote:
It is possible to name the subpattern with (?P<name>pattern) since PHP 4.3.3. Array with matches will contain the match indexed by the string alongside the match indexed by a number, then.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_66843518
quote:
Jij hebt een SchoolConnect verbinding begrijp ik, waar die webspace onder valt? In dat geval Ziggo even bellen zou ik zeggen
  maandag 9 maart 2009 @ 10:41:20 #159
117367 Lekkere_Kwal
Onnozele koekenbakker
pi_66852672
quote:
Op zondag 8 maart 2009 20:43 schreef jakees het volgende:

[..]

GlowMouse dit is me code:
1
2
3
4
5
6
<?php
$conn 
mysql_connect("localhost""root ","") or die(mysql_error());
$conn mysql_select_db("zaalvoetbal"$conn) or die(mysql_error());
$sql 'INSERT INTO `spelers` (`spelers_id`, `spelers_voornaam`, `spelers_achternaam`, `spelers_gsm`, `spelers_punten`) VALUES (\'\', \'aa\', \'bb\', \'cc\', \'0\');'
mysql_query($sql,$conn) or die (mysql_error());
?>

De variabele $conn dubbel gebruiken is niet echt handig (wellicht werkt het maar daar moet je nooit op gokken). Maar ik denk dat de fout ontstaat doordat jouw string begint en eindigt met een single quote en er wel tig singel quotes erin voorkomen (de parser ziet geen verschil tussen ' en `). Dus dien je daar dubble quotes voor te gebruiken. En er zit een dubbele ; in op het eind (hoeft niet bij de query toegevoegd te worden, dat doet mysql_query voor jou):
1
2
3
4
5
6
<?php
$conn 
mysql_connect("localhost""root ","") or die(mysql_error());
$db mysql_select_db("zaalvoetbal"$conn) or die(mysql_error());
$sql "INSERT INTO `spelers` (`spelers_id`, `spelers_voornaam`, `spelers_achternaam`, `spelers_gsm`, `spelers_punten`) VALUES ('', 'aa', 'bb', 'cc', '0')"
$result mysql_query($sql,$db) or die (mysql_error());
?>

En ik heb dus de return waarde van mysql_query in een variabele vangen zodat je daarna kan kijken of de insert gelukt is (immers een failed insert geeft geen mysql_error terug).
pi_66853705
quote:
Op zondag 8 maart 2009 21:17 schreef SuperRembo het volgende:

[..]

preg_match geeft alle gematchte subpatterns terug, dus dat is geen probleem.
Je kan het subpattern wat je zoekt ook een naam geven, dan kan je 'm makkelijker uit de array vissen:
[..]


Dat klopt, maar dan moet ik dus de rest van mijn code aanpassen. Het meegeven van een naam is inderdaad wel een stuk netter.
I hear thunder but there's no rain
this kind of thunder breaks walls and window panes
  maandag 9 maart 2009 @ 12:14:57 #161
75592 GlowMouse
l'état, c'est moi
pi_66855334
quote:
Op maandag 9 maart 2009 10:41 schreef Lekkere_Kwal het volgende:

[..]

De variabele $conn dubbel gebruiken is niet echt handig (wellicht werkt het maar daar moet je nooit op gokken).
En dat is het, mysql_select_db geeft een mooie true of false terug. En het tweede argument van mysql_query is niet van het booleaanse type.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  maandag 9 maart 2009 @ 12:15:56 #162
136730 PiRANiA
All thinking men are atheists.
pi_66855363
Dit topic was ik kwijt..
pi_66863399
Ik heb een vraagje hoe kan ik een class binnen een class gebruiken.

Voor een project wil ik namelijk apparte classes maken voor oa MySQL, Forum, Rechten, Etc.

Maar in de forum en rechten class wil ik gebruik maken van de MySQL class en de functies daarvan zonder deze opnieuw aan te hoeven maken.

Wie kan mij hier eens wat meer over vertellen?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66863557
Aangezien het geen cursuscentrum is hier kun je ook gewoon eens rustig de documentatie doornemen
http://nl2.php.net/zend-engine-2.php

Niet echt een gerichte vraag die makkelijk te beantwoorden valt in zo'n topic..
pi_66863762
@Intrepidity: ik ben al de hele dag bezig met het doornemen van documentatie maar kan er gewoon geen antwoord op vinden!. Ook niet in de documentatie waar je naar linkt, zal ongetwijfeld aan mij liggen...
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66863808
quote:
Op maandag 9 maart 2009 16:24 schreef Chandler het volgende:
@Intrepidity: ik ben al de hele dag bezig met het doornemen van documentatie maar kan er gewoon geen antwoord op vinden!. Ook niet in de documentatie waar je naar linkt, zal ongetwijfeld aan mij liggen...
Op de pagina "The Basics" staat wat je zoekt:
http://nl2.php.net/manual/en/language.oop5.basic.php

Even vertaald naar jouw situatie:
$database = new Database();
$database->functie();

et voila
pi_66864006
ik weet idd al hoe ik een class moet aanroepen, maar vroeg mij af hoe ik dus standaard van een andere class binnen een class gebruik kan maken

dus in mijn forum class van mijn database class
maar ook in mijn andere classes gebruik kan maken van mijn database class.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66864155
http://nl2.php.net/manual/en/function.include.php

Als je nog niet eens zover komt zou ik je sterk aanraden een goed PHP boek te kopen of tutorials op internet te volgen..
pi_66864312
OMG, ik script al jaren en weet echt wel wat include is hoor (of require_once).

Maar goed ik begrijp dus nu uit jou woorden dat ik meerdere classes kan aanmaken

1
2
3
$class1 = new database();
$class2 = new Forum();
$class3 = new Ietsanders();


waarbij class2 en class3 zonder gezeur gebruik kunnen maken van $class1

:)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66864360
quote:
Op maandag 9 maart 2009 16:31 schreef Chandler het volgende:
ik weet idd al hoe ik een class moet aanroepen, maar vroeg mij af hoe ik dus standaard van een andere class binnen een class gebruik kan maken
Hoe heb je het geprobeerd, en waaruit bleek dat het niet werkte (errors)?
pi_66864461
quote:
Op maandag 9 maart 2009 16:39 schreef Chandler het volgende:

waarbij class2 en class3 zonder gezeur gebruik kunnen maken van $class1
Vast niet, scope enzo. Maar je kunt binnen class2 natuurlijk prima een referentie maken naar class1.
pi_66864497
quote:
Op maandag 9 maart 2009 16:39 schreef Chandler het volgende:
OMG, ik script al jaren en weet echt wel wat include is hoor (of require_once).

Maar goed ik begrijp dus nu uit jou woorden dat ik meerdere classes kan aanmaken
[ code verwijderd ]

waarbij class2 en class3 zonder gezeur gebruik kunnen maken van $class1

bestand class1.php
1
2
3
4
5
6
<?php
class1
{
  function 
foo() {}
}
?>


bestand class2.php
1
2
3
4
5
6
7
8
9
10
<?php
require_once("class1.php");
class2
{
  function 
bar()
  {
    
class1::foo();
  }
}
?>


Gewoon de classes die je nodig hebt includen en gebruiken...
Sorry dat ik het zeg, maar het is niet echt te merken dat je al jaren script.. Dan had je namelijk genoeg ervaring gehad om zoiets makkelijk op te zoeken op php.net
pi_66864694
quote:
Op maandag 9 maart 2009 16:42 schreef Intrepidity het volgende:

Dan had je namelijk genoeg ervaring gehad om zoiets makkelijk op te zoeken op php.net
Dit is niet lullig bedoeld richting Chandler, maar hij kan geen documentatie lezen (niet enkel de PHP docs). Of hij weet niet hoe 'ie moet zoeken.
pi_66864785
ik snap nu wat je bedoelt, echter kun je in het gebruik van class1::foo() geen $this-> gebruiken (heb ik ergens gelezen).

Ow en dat je niet kunt zien dat ik al jaren script is helaas een van mijn zwakke punten. Zoals de meeste posters hier wel weten leer ik door te doen, lezen is helaas het vak waarop ik nooit zal slagen ongeacht ik uren door de teksten heen loop..

Maar goed, ik doe mijn best om alles op te vatten en te begrijpen en tja meer kan ik niet hé..

Ow... en dan nog mijn ervaring; dat heeft zich al geuit in vele goedlopende sites
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66864819
quote:
Op maandag 9 maart 2009 16:48 schreef Roy_T het volgende:

[..]

Dit is niet lullig bedoeld richting Chandler, maar hij kan geen documentatie lezen (niet enkel de PHP docs). Of hij weet niet hoe 'ie moet zoeken.
Ik weet dat je het niet lullig bedoelt, maar zoeken en lezen is idd niet mijn sterkste vak! maar aan de andere kant heb ik wel bergen met energie om het te willen en te proberen maar soms zit ik er gewoon door heen

Zoals NU!

Wil wel zeggen dat ik sommige tutoriaals wel begrijp, maar dan zit het ook vol logische code waarbij er meer code voorbeelden zijn dan lappen tekst... alles wat ik weet heb ik geleerd door te vragen en door te spelen met bestaande code.. tja gaat niet snel maar ik kom er wel!
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66864897
quote:
Op maandag 9 maart 2009 16:50 schreef Chandler het volgende:
ik snap nu wat je bedoelt, echter kun je in het gebruik van class1::foo() geen $this-> gebruiken (heb ik ergens gelezen).

Ow en dat je niet kunt zien dat ik al jaren script is helaas een van mijn zwakke punten. Zoals de meeste posters hier wel weten leer ik door te doen, lezen is helaas het vak waarop ik nooit zal slagen ongeacht ik uren door de teksten heen loop..

Maar goed, ik doe mijn best om alles op te vatten en te begrijpen en tja meer kan ik niet hé..

Ow... en dan nog mijn ervaring; dat heeft zich al geuit in vele goedlopende sites
Klopt, de :: operator is voor static aanroepen. Als je $bla = new Class1(); doet kun je vervolgens $bla->foo(); gebruiken. $this werkt alleen voor methodes en properties binnen de huidige klasse, tenzij je uitbreid op een bepaalde klasse: class2 extends class1.
het is uiteraard niet aan te raden om forum extends database te gebruiken, want dat klopt gewoon niet.
pi_66865900
:: werkt helaas niet in mijn geval :{

voorbeeld:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<?php
class tinyMySQL
{
    
//
    
var $host;
    var 
$user;
    var 
$password;
    var 
$database;
    var 
$connectionLink;
    var 
$databaseLink;
    
    function 
__construct($host$username$password)
    {
        if (!
$this->connectionLink = @mysql_connect($host,
                                                   
$username,
                                                   
$password))
        {
            throw new 
Exception('Kan niet connecten met database server.');
        }
    }
    
    function 
select_db($database)
    {
        if (
$this->connectionLink)
        {
            if (!
$this->databaseLink mysql_select_db($database,
                                                       
$this->connectionLink))
            {
                throw new 
Exception('Kan database koppeling niet aanmaken');
            }
        }
        else
        {
            throw new 
Exception('Geen database connectie beschikbaar om database te laden');
        }
    }
    
    
    function 
query($sql)
    {
        if (
$this->connectionLink)
        {
            if (!
$result mysql_query($sql,
                                       
$this->connectionLink))
            {
                throw new 
Exception('Error in query: ' $sql);
            }
        }
        else
        {
            throw new 
Exception('Geen database connectie beschikaar');
        }
    }
    
    function 
__destruct()
    {
        if (
$this->connectionLink)
        {
            
mysql_close($this->connectionLink);
            
            unset(
$this->connectionLink);
        }
        else
        {
            throw new 
Exception('Geen database connectie beschikaar');
        }
    }
}

class 
test
{
    public function 
testIt()
    {
        
$x tinyMySQL::query("SELECT * FROM users");
    }
}

$t = new test();

$con = new TinyMySQL("localhost",
                     
"root",
                     
"");
if (
$con)
{
    
$con->select_db("nl_visfreaks");
    
$t->testIt();
}
else
{
    echo 
'kan geen connectie maken';
}
?>


Ik denk dat ik het gewoon verkeerd zie, en op een of andere manier de class moet overnemen in mijn andere classes... oid...
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66868471
In je klasse test in de functie testIt roep je query aan met ::, terwijl de betreffende functie niet static is. Eerst een instantie maken, dan met "->" een functie aanroepen.

Correcte code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
class test
{
  public function 
testIt()
  {
    
$con = new TinyMySQL("localhost""root""");
    if(
$con)
    {
      
$con->select_db("nl_visfreaks");
      return 
$con->query("SELECT * FROM users");
    }
  }
}

$t = new test();
$resultaat $t->testIt();

// Doe hier iets met $resultaat
?>
pi_66869456
Er zijn eigenlijk 2 opties:
1. Je geeft een instantie van je database class mee aan de constructor van je forum class
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
class Database
{
   function __construct($server, $user, $password)
   {
      //...
   }
}

class Forum
{
   var $db;
   
   function __construct($db)
   {
      $this->db = $db;
   }

   public function readTopics()
   {
      $topics = $this->db->query(...);
      return $topics;
   }
}

$db = new Database("server", "user", "password");
$forum = new Forum($db);
$topics = $forum->readTopics();


2. Je maakt de configuratie van je database class zo dat je binnen je forum class een nieuwe instantie van je database class kan maken.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Database
{
   public static function create()
   {
      return new Database("server", "user", "password");
   }
}

class Forum
{
   public function readTopics()
   {
      $db = Database::create();
      $topics = $db->query(...);
      return $topics;
   }
}

$forum = new Forum();
$topics = $forum->readTopics();
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_66872775
SR! jij snapt het idd!

Ik denk dat optie 1 voor mij het beste is omdat ik anders voor ieder onderdeel een apparte connectie naar MySQL moet maken, al heb ik vandaag al wat andere sources gezien waarin men middels een controller alle classes laad, en deze classes door elkaar gebruikt kunnen worden, al is het mij nog niet geheel duidelijk hoe dit in zijn werk gaat.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66873449
Ik gebruik optie 1 altijd, daar heb ik wel goede ervaringen mee
pi_66873518
Je kunt ook nog een singleton gebruiken.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
class Database {
  private static 
$instance null;

  public static function 
getInstance() {
    if(empty(
Database::$instance)) {
      
Database::$instance = new Database();
    }
    return 
Database::$instance;
  }

  private function 
__construct() {
    
// Private constructor, zo kun je niet per ongeluk zelf "new Database()" aanroepen.
  
}
}
?>


Gebruiken is ook niet zo ingewikkeld:
1
2
3
4
5
6
7
<?php
class Forum {
  public function 
readTopic() {
    
$db Database::getInstance();
  }
}
?>
pi_66873610
quote:
Op maandag 9 maart 2009 20:50 schreef Xcalibur het volgende:
Ik gebruik optie 1 altijd, daar heb ik wel goede ervaringen mee
Volgens mij trek je daar wel heel veel databaseverbindingen mee open. En da's verspilling van resources. Het maakt het ook lastiger om bijvoorbeeld een lijst van alle queries op te vragen.
pi_66874327
Is dat zo?

Je maakt maar 1x een db-connectie, daarna geef je de connectie mee als variabele aan je andere classes. Dan wordt er toch niet voor iedere class een nieuwe verbinding geopend?
pi_66874462
Je hebt gelijk, ik haalde nummer 1 en nummer 2 van SR door elkaar.
pi_66874579
*phew*
pi_66876659
:D ik heb inderdaad gekozen voor de optie 1 van SR en dat werkt nu perfect!

Zelfs snel een MySQL class in elkaar geschroefd, zie voorbeeld:

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
<?php
class tinyMySQL
{
    
//
    
private $hostname null;
    private 
$username null;
    private 
$password null;
    private 
$database null;
    
    private 
$db_con null;
    
    
// check
    
public $queries = array();

    function 
__construct($hostname ''$username ''$password ''$database '')
    {
        if (!empty(
$hostname) && !empty($username))
        {
            
$this->connect($hostname,
                           
$username,
                           
$password);
                           
            if (
$this->db_con && !empty($database))
            {
                if (!
$this->select_db($database))
                {
                    
trigger_error('Kan database niet laden, probeer het nogmaals'E_USER_NOTICE);
                }
            }
        }
    }
    
    public function 
connect($hostname$username$password)
    {
        if (!empty(
$hostname) && !empty($username))
        {
            
$this->db_con mysql_connect($hostname,
                                          
$username,
                                          
$password);
                                        
            if (!
$this->db_con)
            {
                return 
false;
            }
            
            
$this->hostname $hostname;
            
$this->username $username;
            
$this->password $password;
            
            return 
true;
        }
        else
        {
            
trigger_error('Kan geen connectie maken met de database server met incomplete gegevens'E_USER_NOTICE);
        }
    }

    function 
select_db($database)
    {
        if (
$this->db_con)
        {
            
$try_select = @mysql_select_db($database,
                                           
$this->db_con);
                                 
            if (
$try_select)
            {
                
$this->database $database;

                return 
true;
            }
            else
            {
                
trigger_error('Kan database koppeling niet aanmaken'E_USER_NOTICE);
            }
        }
        else
        {
            
trigger_error('Geen database connectie beschikbaar om database te laden'E_USER_NOTICE);
        }
        
        return 
false;
    }
    
    
    public function 
query($sql$unbuffered false)
    {
        if (
$this->db_con)
        {
            
// lees query bench totaal items
            
$x count($this->queries)+1;

            
// queries bench data
            
$this->queries[$x] = array("query" => $sql,
                                       
"start" => time(),
                                       
"end"   => 0);

            
// wat voor query is het en voer het uit
            
if ($unbuffered == true)
            {
                
$query_status = @mysql_unbuffered_query($sql,
                                                        
$this->db_con);
            }
            else
            {
                
$query_status = @mysql_query($sql,
                                             
$this->db_con);
            }
            
            
// eind tijd.
            
$this->queries[$x]['end'] = time();
            
$this->queries[$x]['time'] = round($this->queries[$x]['end'] - $this->queries[$x]['start'], 4);
            
            
// query in de fout? sla fout in bench op.
            
if (!$query_status)
            {
                
// error gevonden dus error in query array zetten

                
$this->queries[$x]['error'] = mysql_error();
                
$this->queries[$x]['errno'] = mysql_errno($this->db_con);
                
$this->queries[$x]['minfo'] = mysql_info($this->db_con);
            }
            
            return 
$query_status;
        }
        else
        {
            
trigger_error('Geen database connectie beschikaar'E_USER_NOTICE);

            return 
false;
        }
    }
    
    public function 
escape($string)
    {
        if (
$this->db_con)
        {
            if (
function_exists('mysq_real_escape_string'))
            {
                return @
mysql_real_escape_string($string);
            }
            else
            {
                return @
mysql_escape_string($string);
            }
        }
        else
        {
            
trigger_error('Geen database connectie beschikaar'E_USER_NOTICE);

            return 
false;
        }
    }
    
    public function 
affected_rows()
    {
        if (
$this->db_con)
        {
            
$status = @mysql_affected_rows($this->db_con);
            
            if (
$status != false)
            {
                
$this->queries[count($this->queries)]['affected_rows'] = $status;
            }
            
            return 
$status;
        }
        else
        {
            
trigger_error('Geen database connectie beschikaar'E_USER_NOTICE);

            return 
false;
        }
    }
    
    public function 
fetch_array($result)
    {
        return @
mysql_fetch_array($result);
    }
    
    public function 
fetch_assoc($result)
    {
        return @
mysql_fetch_assoc($result);
    }

    public function 
fetch_object($result)
    {
        return @
mysql_fetch_object($result);
    }
    
    public function 
result($result$start 0)
    {
        
$items = @mysql_result($result,
                               
$start);
                               
        if (
$items != false)
        {
            
$this->queries[count($this->queries)]['result'] = $items;
        }
        
        return 
$items;
    }

    public function 
last_id()
    {
        if (
$this->con)
        {
            return @
mysql_insert_id($this->db_con);
        }
        else
        {
            
trigger_error('Geen database connectie beschikaar'E_USER_NOTICE);

            return 
false;
        }
    }
    
    public function 
num_rows($result)
    {
        if (
$this->db_con)
        {
            
$items = @mysql_num_rows($result);

            if (
$items != false)
            {
                
$this->queries[count($this->queries)]['items'] = $items;
            }

            return 
$items;

        }
        else
        {
            
trigger_error('Geen database connectie beschikaar'E_USER_NOTICE);

            return 
false;
        }
    }

    public function 
close()
    {
        if (
$this->db_con)
        {
            
$try_close = @mysql_close($this->db_con);
            if (
$try_close)
            {
                
$this->db_hostname null;
                
$this->db_username null;
                
$this->db_password null;
                
$this->db_database null;
                
                
$this->db_con null;
                
                return 
true;
            }
            else
            {
                return 
false;
            }
        }
        else
        {
            
trigger_error('Kan geen database koppeling sluiten, geen koppeling gevonden'E_USER_NOTICE);
        }
    }
    
    function 
__destruct()
    {
        
$this->close();
    }
}
?>


Je kunt met deze class op meedere manieren connecten etc... leek mij iig wel handig tevens zit er een stukje benchmarking in, altijd handig als je opzoek bent naar slome queries!

Comments? wil graag leren om het beter te doen, dus heb je iets te melden; meld het ;)
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  maandag 9 maart 2009 @ 22:04:43 #188
75592 GlowMouse
l'état, c'est moi
pi_66876850
== true is lelijk, en microtime is nauwkeuriger.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_66876935
Voor benchmarking kun je beter microtime(true) gebruiken ipv time(). Dan krijg je microseconden, stukken nauwkeuriger dan seconden als het gaat om querytijd.
  maandag 9 maart 2009 @ 23:57:19 #190
56176 Catch22-
Ben je Blind?!
pi_66881531
je kan beter
if($var)/if(!$var)
doen dan
if($var == true) / if($var == false)
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66885977
Ik zal microtime eens inbouwen maar wat is er dan zo vies aan == true / false

if (!$var) kan ook maar wat is er zo anders aan dan?

Verder nog inhoudelijke comments op bv errors afvangen etc?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  dinsdag 10 maart 2009 @ 09:11:28 #192
56176 Catch22-
Ben je Blind?!
pi_66886346
Het is wat korter/netter.

Als je het serieus wil aanpakken kan je beter loggen. Users moeten in principe geen errors zien.

en over commentaar; 'If it was hard to write, it should be hard to understand'
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66886509
quote:
Op dinsdag 10 maart 2009 09:11 schreef Catch22- het volgende:
Het is wat korter/netter.

Als je het serieus wil aanpakken kan je beter loggen. Users moeten in principe geen errors zien.

en over commentaar; 'If it was hard to write, it should be hard to understand'
Maar nog steeds snap ik het voordeel van (!$var) niet ipv ($var == false)

En kun je mij eens een tipje geven hoe ik deze errors beter kan afvangen cq gebruiken.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66886730
quote:
Op dinsdag 10 maart 2009 09:18 schreef Chandler het volgende:
Maar nog steeds snap ik het voordeel van (!$var) niet ipv ($var == false)
Dan kan je net zo goed (($var == false) == true) schrijven.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_66886815
Tuurlijk kan dat al snap ik het nog steeds niet
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  dinsdag 10 maart 2009 @ 10:16:17 #196
117367 Lekkere_Kwal
Onnozele koekenbakker
pi_66887966
Er is ook geen functioneel voordeel, als je echter veel dev't ga je geen tijd verkwisten aan het uitgebreid uittikken van dergelijke expressies als je met if($var) of if(!$var) er ook bent...
pi_66889509
ok, tnx dus minder toetsen indrukken is het voordeel
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66892140
Als je nou drie === gebruikt, dan heb je weer wél iets aan jouw notatie Maar dan moet het gebruik van === wel toegevoegde waarde hebben
  dinsdag 10 maart 2009 @ 13:06:32 #199
56176 Catch22-
Ben je Blind?!
pi_66893557
en dat heeft het bij een boolean niet. of hij moet TRUE zijn, of true, of TruE
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66894353
quote:
Op dinsdag 10 maart 2009 13:06 schreef Catch22- het volgende:
en dat heeft het bij een boolean niet. of hij moet TRUE zijn, of true, of TruE
Uiteraard Je moet wel zeker met een boolean te maken hebben uiteraard. $var = array(); voldoet ook aan !$var, ook al is het geen boolean false maar een lege array.
  Donald Duck held dinsdag 10 maart 2009 @ 14:50:17 #201
46149 __Saviour__
Superstapelsmoor op Kristel
pi_66897243
Is de $HTTP_REFERER waarde iets wat door de host uitgeschakeld kan worden?
Ik krijg de waarde niet uitgelezen namelijk. Het script draaide eerst op een andere host en is direct overgezet, daar werkte het eerste prima.
❤ Rozen zijn rood ❤
❤ Viooltjes zijn blauw ❤
❤ Kristel, ik hou van jou! ❤
pi_66897793
Nou ik heb weer aardig wat geleerd.

Nu eens een andere vraag, en ja ik heb dit zelf al geprobeerd maar kwam niet tot een bevredigend antwoord:

Is het mogelijk om binnen een tabel aantallen te tellen waarbij de volgende waarden op gaan.

count1 aantal velden met 0
count2 aantal velden die niet 0 bevatten.

en dit alles in 1 query?

voorbeeld:
"SELECT count(id) FROM online WHERE user_id = '0'"
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66897972
quote:
Op dinsdag 10 maart 2009 14:50 schreef __Saviour__ het volgende:
Is de $HTTP_REFERER waarde iets wat door de host uitgeschakeld kan worden?
Ik krijg de waarde niet uitgelezen namelijk. Het script draaide eerst op een andere host en is direct overgezet, daar werkte het eerste prima.
Voor zover ik weet niet, dit wordt namelijk door de browser mee gezonden.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_66898155
quote:
Op dinsdag 10 maart 2009 11:10 schreef Chandler het volgende:
ok, tnx dus minder toetsen indrukken is het voordeel
En weer ietsiepietsie performance-winst. if($boolean == true) is namelijk weer een extra CPU handeling ten opzichte van if($Boolean) .
quote:
Op dinsdag 10 maart 2009 15:06 schreef Chandler het volgende:
Nou ik heb weer aardig wat geleerd.

Nu eens een andere vraag, en ja ik heb dit zelf al geprobeerd maar kwam niet tot een bevredigend antwoord:

Is het mogelijk om binnen een tabel aantallen te tellen waarbij de volgende waarden op gaan.

count1 aantal velden met 0
count2 aantal velden die niet 0 bevatten.

en dit alles in 1 query?

voorbeeld:
"SELECT count(id) FROM online WHERE user_id = '0'"
Je kunt met GROUP BY bepaalde groeperingen in een query verrichten wanneer je functies als SUM(), COUNT() en AVG() gebruikt.
quote:
Op dinsdag 10 maart 2009 14:50 schreef __Saviour__ het volgende:
Is de $HTTP_REFERER waarde iets wat door de host uitgeschakeld kan worden?
Ik krijg de waarde niet uitgelezen namelijk. Het script draaide eerst op een andere host en is direct overgezet, daar werkte het eerste prima.
$HTTP_SERVER is ouderwets, probeer anders $_SERVER['HTTP_REFERER'] eens.

Tevens TeeVeePee.
pi_66898399
quote:
Op dinsdag 10 maart 2009 15:06 schreef Chandler het volgende:
Nou ik heb weer aardig wat geleerd.

Nu eens een andere vraag, en ja ik heb dit zelf al geprobeerd maar kwam niet tot een bevredigend antwoord:

Is het mogelijk om binnen een tabel aantallen te tellen waarbij de volgende waarden op gaan.

count1 aantal velden met 0
count2 aantal velden die niet 0 bevatten.

en dit alles in 1 query?

voorbeeld:
"SELECT count(id) FROM online WHERE user_id = '0'"
een Count op de velden met 0 is geen probleem natuurlijk. 2 counts met verschillende voorwaarden in 1 query gaat niet lukken, tenzij je een subquery gaat maken ofzo....

Je kunt wel je ene count van je totaal aantal velden aftrekken (die je misschien al weet?), dan ben je er ook
pi_66898781
quote:
Op dinsdag 10 maart 2009 15:14 schreef Tuvai.net het volgende:

En weer ietsiepietsie performance-winst. if($boolean == true) is namelijk weer een extra CPU handeling ten opzichte van if($Boolean) .
Hoe veel honderdduizenden keren per seconde moet je dat doen om die performancewinst te merken?
  Donald Duck held dinsdag 10 maart 2009 @ 15:31:24 #207
46149 __Saviour__
Superstapelsmoor op Kristel
pi_66898818
quote:
Op dinsdag 10 maart 2009 15:14 schreef Tuvai.net het volgende:
$HTTP_SERVER is ouderwets, probeer anders $_SERVER['HTTP_REFERER'] eens.
En dat was de oplossing inderdaad. Bedankt.
❤ Rozen zijn rood ❤
❤ Viooltjes zijn blauw ❤
❤ Kristel, ik hou van jou! ❤
pi_66898967
quote:
Op dinsdag 10 maart 2009 15:30 schreef Roy_T het volgende:

[..]

Hoe veel honderdduizenden keren per seconde moet je dat doen om die performancewinst te merken?
Je merkt er in de praktijk inderdaad vrij weinig aan. Maar ten eerste vind ik het netter staan (waarom nog eens een == true /false achter een variabele knallen die al een Boolean/Bit type is?) en als ik daar ook nog eens een, al dan niet theoretische, snelheidswinst uit kan halen dan is dat leuk meegenomen. Is ook een stukje programmeermentaliteit natuurlijk, ik ben een optimalisatie-dwangneuroot.
  dinsdag 10 maart 2009 @ 15:41:32 #209
58834 Catbert
The evil HR Director.
pi_66899198
quote:
Op dinsdag 10 maart 2009 15:14 schreef Tuvai.net het volgende:
En weer ietsiepietsie performance-winst. if($boolean == true) is namelijk weer een extra CPU handeling ten opzichte van if($Boolean) .
Brakke compiler als 'ie dat niet wegoptimaliseert.
"[...] a large number of the teenagers claiming Asperger's are, in fact, merely dicks."
pi_66899268
Ik vind het ook netter hoor, daarom doe ik het ook. Maar de snelheidswinst is zo klein, dat die me echt m'n reet zal roesten. Als je dit soort optimalisaties echt nodig hebt, dan heb je zoveel traffic dat je er ook een extra server bij kan prakken (en da's vaak nog goedkoper ook)
  dinsdag 10 maart 2009 @ 15:47:52 #211
117367 Lekkere_Kwal
Onnozele koekenbakker
pi_66899425
quote:
Op dinsdag 10 maart 2009 15:41 schreef Catbert het volgende:

[..]

Brakke compilerparser als 'ie dat niet wegoptimaliseert.
pi_66899532
quote:
Op dinsdag 10 maart 2009 15:43 schreef Roy_T het volgende:
Ik vind het ook netter hoor, daarom doe ik het ook. Maar de snelheidswinst is zo klein, dat die me echt m'n reet zal roesten. Als je dit soort optimalisaties echt nodig hebt, dan heb je zoveel traffic dat je er ook een extra server bij kan prakken (en da's vaak nog goedkoper ook)
Al die losse gevalletjes an sich maken inderdaad helemaal niks uit. Het gaat me echter om de big picture. Ik krijg liever code van iemand die logisch programmeert, dan van iemand die maar iets doet en allerlei overbodige vergelijkingen en handelingen verricht . Dat is hetzelfde verhaal wat betreft XHTML en CSS. Je hebt broncodetechnische correctheid, maar de semantiek die er achter ligt, die is wat mij betreft veel belangrijker.
  dinsdag 10 maart 2009 @ 17:44:16 #213
56176 Catch22-
Ben je Blind?!
pi_66903829
Precies.

Het gaat niet alleen om of het optimaal is, maar ook of het leesbaar is.

1
2
3
$c = $_POST['an'];
$b = $_POST['vn'];
$d = f($c,$d);

is hetzelfde als
1
2
3
$voorNaam = $_POST['voorNaam'];
$achterNaam = $_POST['achterNaam'];
$completeNaam = MaakCompleteNaamVanLosseDelen($voorNaam, $achterNaam);


Het eerste zal wellicht iets sneller geparsed worden, maar als je het later terugleest tussen andere code is het volkomen onbegrijpelijk.
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66903991
Ik ben het er volmondig mee eens hoor

Maar zodra er vars/functies/etc in het nederlands gebruikt worden, krijg ik een allergische reactie. Dat dan weer wel.
  dinsdag 10 maart 2009 @ 18:03:20 #215
56176 Catch22-
Ben je Blind?!
pi_66904538
ik ook, slechts ter illustratie. Programmeer zelf ook in het engels hoor.
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66904636
Thank God

Ik ken er genoeg die NL gebruiken, echt verschrikkelijk. Neem je een codebase over, gaat (bijv.) onze duitse medewerker ermee aan de slag... "erm, can someone please translate the friggin' code?"

Als je het in het NL wilt doen, wees dan een vent en maak een wrapper voor iedere functie, zodat strtolower() gewoon reeksnaaronderkast() wordt, etc
pi_66905010
Nederlandse benamingen voor variabelen/functies/methoden inderdaad. Niet alleen is Engels duidelijker omdat programmeertalen ook in het Engels zijn, maar het komt me ook meestal beter uit. Aantallen beginnen met mij meestal met een 'Amt' benaming, Strings ter indicatie van iets met 'Str', enz.

Duitsers zijn op dat gebied inderdaad erg ja. Of uitleg van bijvoorbeeld flags in een block comment in een of andere rare taal, kom ik ook vaak tegen.
pi_66905716
quote:
Op maandag 9 maart 2009 10:41 schreef Lekkere_Kwal het volgende:

[..]

De variabele $conn dubbel gebruiken is niet echt handig (wellicht werkt het maar daar moet je nooit op gokken). Maar ik denk dat de fout ontstaat doordat jouw string begint en eindigt met een single quote en er wel tig singel quotes erin voorkomen (de parser ziet geen verschil tussen ' en `). Dus dien je daar dubble quotes voor te gebruiken. En er zit een dubbele ; in op het eind (hoeft niet bij de query toegevoegd te worden, dat doet mysql_query voor jou):
[ code verwijderd ]

En ik heb dus de return waarde van mysql_query in een variabele vangen zodat je daarna kan kijken of de insert gelukt is (immers een failed insert geeft geen mysql_error terug).
sorry voor mijn late reactie. Ik heb je code erin gegooid en ik krijg nog de zelfde melding. Ik heb ook een select geprobeerd en de code is nu:
1
2
3
4
5
6
<?php
$conn = mysql_connect("localhost", "root ","") or die(mysql_error());
$db = mysql_select_db("zaalvoetbal", $conn) or die(mysql_error());
$sql = "SELECT * FROM `spelers`";
$result = mysql_query($sql,$db) or die (mysql_error());
?>

Ik krijg nu nog steeds de foutmelding: "Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in ...".

Heeft iemand een idee?
  dinsdag 10 maart 2009 @ 18:52:47 #219
75592 GlowMouse
l'état, c'est moi
pi_66906242
quote:
Op dinsdag 10 maart 2009 14:50 schreef __Saviour__ het volgende:
Is de $HTTP_REFERER waarde iets wat door de host uitgeschakeld kan worden?
Ik krijg de waarde niet uitgelezen namelijk. Het script draaide eerst op een andere host en is direct overgezet, daar werkte het eerste prima.
Kijk eens naar register_globals.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  dinsdag 10 maart 2009 @ 18:54:19 #220
75592 GlowMouse
l'état, c'est moi
pi_66906290
quote:
Op dinsdag 10 maart 2009 18:37 schreef jakees het volgende:

[..]

sorry voor mijn late reactie. Ik heb je code erin gegooid en ik krijg nog de zelfde melding. Ik heb ook een select geprobeerd en de code is nu:
[ code verwijderd ]

Ik krijg nu nog steeds de foutmelding: "Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in ...".

Heeft iemand een idee?
Het tweede argument van mysql_query is de connection identifier, niet een boolean.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_66907534
quote:
Op dinsdag 10 maart 2009 18:52 schreef GlowMouse het volgende:

[..]

Kijk eens naar register_globals.
Zoals Tuvai al schreef, is $HTTP_REFERER ouderwets. Gewoon de code aanpassen is beter.
En register_globals is een ***optie. Vooral als je een provider treft waar je het niet uit kunt zetten (ja, die bestaan). register_globals moet gewoon uit. Gelukkig wordt'ie afgeschaft.
pi_66907612
quote:
Op dinsdag 10 maart 2009 18:54 schreef GlowMouse het volgende:

[..]

Het tweede argument van mysql_query is de connection identifier, niet een boolean.
THX!! heb me helemaal suf zitten rukken zoeken!
pi_66907781
quote:
Op dinsdag 10 maart 2009 19:24 schreef Light het volgende:
Gelukkig wordt'ie afgeschaft.
Amen to that. Een functionaliteit als register_globals hoort niet in een programmeertaal thuis.
pi_66908179
quote:
Op dinsdag 10 maart 2009 18:18 schreef Tuvai.net het volgende:
Aantallen beginnen met mij meestal met een 'Amt' benaming, Strings ter indicatie van iets met 'Str', enz.
Hč bah
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_66908315
quote:
Op dinsdag 10 maart 2009 19:42 schreef SuperRembo het volgende:

[..]

Hč bah


Dat is een gewoonte die ik me aangeleerd heb, zodat ik ook verder in mijn bronbestanden weet welke variabelen van welk type zijn. Vooral in geval van veel verschillende scopes en vooral in C# (veel verschillende data 'types') vind ik dat weer handig. Wel zo handig om meteen te kunnen zien dat 'Lbl...' naar een label verwijst, 'Btn...' naar een button, 'Amt' naar een numeriek aantal, enz.
pi_66908509
quote:
Op dinsdag 10 maart 2009 19:46 schreef Tuvai.net het volgende:

[..]



Dat is een gewoonte die ik me aangeleerd heb, zodat ik ook verder in mijn bronbestanden weet welke variabelen van welk type zijn. Vooral in geval van veel verschillende scopes en vooral in C# (veel verschillende data 'types') vind ik dat weer handig. Wel zo handig om meteen te kunnen zien dat 'Lbl...' naar een label verwijst, 'Btn...' naar een button, 'Amt' naar een numeriek aantal, enz.
In PHP kan ik het me nog voorstellen, maar in C# Types staan vast na het declareren van een variabele, en met een simpele mouseover over de variabele krijg je alle info die je nodig hebt.. Stel dat je ergens een getal hebt die je intHuppeldepup genoemd hebt, en je bedenkt later dat het toch wel handig is om er een floating point getal van te maken.. kun je overal je namen gaan aanpassen
Prefixes in strong typed talen zijn je reinste onzin..
pi_66908623
quote:
Op dinsdag 10 maart 2009 19:51 schreef Intrepidity het volgende:

[..]

In PHP kan ik het me nog voorstellen, maar in C# Types staan vast na het declareren van een variabele, en met een simpele mouseover over de variabele krijg je alle info die je nodig hebt.. Stel dat je ergens een getal hebt die je intHuppeldepup genoemd hebt, en je bedenkt later dat het toch wel handig is om er een floating point getal van te maken.. kun je overal je namen gaan aanpassen
Prefixes in strong typed talen zijn je reinste onzin..
Ik gebruik het dan ook niet overal. En gezien het feit dat jij refereert naar een tooltip, denk ik dat je van Visual Studio uit gaat. Ik werk naast VS ook zéér regelmatig met notepad++.
  dinsdag 10 maart 2009 @ 20:21:04 #228
75592 GlowMouse
l'état, c'est moi
pi_66909817
quote:
Op dinsdag 10 maart 2009 19:24 schreef Light het volgende:

[..]

Zoals Tuvai al schreef, is $HTTP_REFERER ouderwets. Gewoon de code aanpassen is beter.
En register_globals is een ***optie. Vooral als je een provider treft waar je het niet uit kunt zetten (ja, die bestaan). register_globals moet gewoon uit. Gelukkig wordt'ie afgeschaft.
Dat kom je hopelijk vanzelf wel tegen als je op register_globals zoekt, maar dan weet ie iig waarom het fout gaat.

Amt is gek als prefix omdat het onduidelijk is wat het verschil is met een unsigned integer.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  dinsdag 10 maart 2009 @ 20:21:44 #229
56176 Catch22-
Ben je Blind?!
pi_66909854
quote:
Op dinsdag 10 maart 2009 19:46 schreef Tuvai.net het volgende:

[..]



Dat is een gewoonte die ik me aangeleerd heb, zodat ik ook verder in mijn bronbestanden weet welke variabelen van welk type zijn. Vooral in geval van veel verschillende scopes en vooral in C# (veel verschillende data 'types') vind ik dat weer handig. Wel zo handig om meteen te kunnen zien dat 'Lbl...' naar een label verwijst, 'Btn...' naar een button, 'Amt' naar een numeriek aantal, enz.
Ik doe dat ook wel met asp.net elementen, maar niet met variabelen. Ik weet aan de hand van de naam van de variabele precies wat het is.

hongaarse notatie toch? Ook niet mijn ding.
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66917315
quote:
Op dinsdag 10 maart 2009 20:21 schreef Catch22- het volgende:

[..]

Ik doe dat ook wel met asp.net elementen, maar niet met variabelen. Ik weet aan de hand van de naam van de variabele precies wat het is.
Ik het merendeel van de gevallen ook. In extreme gevallen met bijvoorbeeld veel scopes beroep ik me op dergelijke notaties gewoon om het voor mezelf en anderen duidelijk te houden.
  woensdag 11 maart 2009 @ 04:32:20 #231
187069 slacker_nl
Sicko pur sang
pi_66922987
quote:
Op dinsdag 10 maart 2009 19:51 schreef Intrepidity het volgende:

[..]

In PHP kan ik het me nog voorstellen, maar in C# Types staan vast na het declareren van een variabele, en met een simpele mouseover over de variabele krijg je alle info die je nodig hebt.. Stel dat je ergens een getal hebt die je intHuppeldepup genoemd hebt, en je bedenkt later dat het toch wel handig is om er een floating point getal van te maken.. kun je overal je namen gaan aanpassen
Nah, das moeilijk s/intHuppeldepup/floatHuppeldepup/g
In theory there is no difference between theory and practice. In practice there is.
  woensdag 11 maart 2009 @ 09:01:42 #232
56176 Catch22-
Ben je Blind?!
pi_66924676
Denk niet dat er veel mensen C# in VI programmeren.
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66925701
quote:
Op woensdag 11 maart 2009 04:32 schreef slacker_nl het volgende:

[..]

Nah, das moeilijk s/intHuppeldepup/floatHuppeldepup/g
Afgezien van hoeveel moeite het kost is het met een fatsoenlijke IDE gewoon nergens voor nodig Daarnaast, wat doe je als er per ongeluk al een keer een floatHuppeldepup in je project bestond ergens? krijg je nogal unwanted behaviour van denk ik..
  woensdag 11 maart 2009 @ 09:54:26 #234
58834 Catbert
The evil HR Director.
pi_66926073
Die quasi hungarian notation is not done in Java en C# programmeren. Als je dat ooit voor een serieus bedrijf gaat doen slaan ze dergelijke praktijken er subiet uit.
"[...] a large number of the teenagers claiming Asperger's are, in fact, merely dicks."
  woensdag 11 maart 2009 @ 11:39:33 #235
56176 Catch22-
Ben je Blind?!
pi_66929191
quote:
Op woensdag 11 maart 2009 09:39 schreef Intrepidity het volgende:

[..]

Afgezien van hoeveel moeite het kost is het met een fatsoenlijke IDE gewoon nergens voor nodig Daarnaast, wat doe je als er per ongeluk al een keer een floatHuppeldepup in je project bestond ergens? krijg je nogal unwanted behaviour van denk ik..
VS2008 biedt ook gewoon aan alles te wijzigen als je de naam van je variabele aanpast

als ik een var 'username' tegenkom, weet ik zelf wel dat het een string is. Dat een id een int is, weet ik ook wel etc
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66930225
quote:
Op woensdag 11 maart 2009 11:39 schreef Catch22- het volgende:

[..]

VS2008 biedt ook gewoon aan alles te wijzigen als je de naam van je variabele aanpast

als ik een var 'username' tegenkom, weet ik zelf wel dat het een string is. Dat een id een int is, weet ik ook wel etc
Ja, dat zeg ik dus.. maar als je intBlaat in floatBlaat gaat wijzigen/refractoren, en er bestond toevallig al een floatBlaat, dan gaat het mis volgensmij
  woensdag 11 maart 2009 @ 12:54:13 #237
56176 Catch22-
Ben je Blind?!
pi_66931600
Ja dan loopt het in de soep, maar dan is je naamgeving ook niet goed
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66935002
quote:
Op woensdag 11 maart 2009 12:11 schreef Intrepidity het volgende:

[..]

Ja, dat zeg ik dus.. maar als je intBlaat in floatBlaat gaat wijzigen/refractoren, en er bestond toevallig al een floatBlaat, dan gaat het mis volgensmij
Dan verander je daarna toch gewoon floatBlaat in floatBlaat2?
  woensdag 11 maart 2009 @ 15:55:49 #239
192856 -SG-
PSV Eindhoven!
pi_66938350
Ik kom me hier ook aanmelden als dummie . Maar eerst even het topic doorlezen.
A little knowledge is a dangerous thing.
pi_66938729
Ik ben dit topic ook actief aan het volgen na die discussie over die database klasse

Ik had er alleen nog 1 vraag over. Zitten er voordelen aan de singleton methode die Light voorstelde tegenover de methode die Chandler uiteindelijk koos? Ik heb er wat op gegoogled en zie dat er wat mensen "tegen" een singleton zijn omdat het niet true oop is. Maar goed aangezien mijn oop kennis nogal basic is kan ik hier vrij weinig mee...
pi_66939410
quote:
Op woensdag 11 maart 2009 16:04 schreef spaceninjapirate het volgende:
Ik ben dit topic ook actief aan het volgen na die discussie over die database klasse

Ik had er alleen nog 1 vraag over. Zitten er voordelen aan de singleton methode die Light voorstelde tegenover de methode die Chandler uiteindelijk koos? Ik heb er wat op gegoogled en zie dat er wat mensen "tegen" een singleton zijn omdat het niet true oop is. Maar goed aangezien mijn oop kennis nogal basic is kan ik hier vrij weinig mee...
Waarom zou het niet OOP zijn? Je werkt nog steeds met een object, met de regel dat er binnen de applicatie maar 1 object van dat type mag bestaan, bijvoorbeeld om resources te beschermen. Een van de meest gebruikte OO design patterns, dus het argument dat het niet OO genoeg is lijkt me onzin. Ik gebruik zelf ook een singleton databaseklasse in mijn PHP applicaties, zodat er maar 1 actieve verbinding per pagina aanroep bestaat.
  woensdag 11 maart 2009 @ 16:29:35 #242
192856 -SG-
PSV Eindhoven!
pi_66939768
Oke, ik heb een probleem. Mijn PHP skills zijn -10 maar ik moet al een soort van script gaan maken. Ik moet zelfs een soort van ticketservice maken. De bedoeling is dan dat wij mensen ons laten mailen en eerst het geld laat overmaken. En dan sturen wij ze de kaarten voor het concert.

Alleen ik zou mijn god niet weten hoe ik dit moet doen. Heb ook al in mijn php boek gekeken maar daar wordt ik ook niet veel wijzer van. Iemand die mij kan helpen/tips geven hoe ik dit moet aanpakken?
A little knowledge is a dangerous thing.
pi_66939890
quote:
Op woensdag 11 maart 2009 16:29 schreef -SG- het volgende:

Iemand die mij kan helpen/tips geven hoe ik dit moet aanpakken?
Uitbesteden, zodat je een solide en veilig (!!) systeem krijgt. En dat is vast goedkoper dan jou een jaar aan te laten rommelen.

Een beetje knutselen is leuk, maar dan wel aan een knutselproject. Niet aan een app als dit.

edit: Ik ga er dus even vanuit dat het spannender is dan een mailtje sturen, en je te maken hebt met users, voorraad, etc.
pi_66939895
Wat valt er nog te PHP'en als zij julie mailen, en vervolgens alles achter de schermen afgehandeld wordt? Je hebt een mailscript nodig?
  woensdag 11 maart 2009 @ 16:40:41 #245
192856 -SG-
PSV Eindhoven!
pi_66940132
quote:
Op woensdag 11 maart 2009 16:33 schreef Intrepidity het volgende:
Wat valt er nog te PHP'en als zij julie mailen, en vervolgens alles achter de schermen afgehandeld wordt? Je hebt een mailscript nodig?
Hmm misschien is dat beter ja .
A little knowledge is a dangerous thing.
  woensdag 11 maart 2009 @ 16:41:16 #246
192856 -SG-
PSV Eindhoven!
pi_66940150
quote:
Op woensdag 11 maart 2009 16:32 schreef Roy_T het volgende:

[..]

Uitbesteden, zodat je een solide en veilig (!!) systeem krijgt. En dat is vast goedkoper dan jou een jaar aan te laten rommelen.

Een beetje knutselen is leuk, maar dan wel aan een knutselproject. Niet aan een app als dit.

edit: Ik ga er dus even vanuit dat het spannender is dan een mailtje sturen, en je te maken hebt met users, voorraad, etc.
Nou het hoeft niet allemaal gerealiseerd te worden. Het is voor school en de site zal waarschijnlijk nooit de lucht in gaan.
A little knowledge is a dangerous thing.
pi_66940412
Ah, een 6- is genoeg dus Ik ging uit van iets wat in productie moet (en dus een 9+ moet zijn).
  woensdag 11 maart 2009 @ 16:54:55 #248
192856 -SG-
PSV Eindhoven!
pi_66940612
quote:
Op woensdag 11 maart 2009 16:49 schreef Roy_T het volgende:
Ah, een 6- is genoeg dus Ik ging uit van iets wat in productie moet (en dus een 9+ moet zijn).
Nou het liefst natuurlijk een 9+ .

Maar wij maken een site voor een feest organisator. Nu moet ik daarvan de 'ticketservice' maken.

Nu had ik zo bedacht. Mensen moeten hun naam ingeven. Hun email adres. Hoeveel kaarten ze willen kopen (het mogen er max 6 zijn). Welk feest ze naar toe willen (iedereen feest heeft ook weer een andere kaart prijs) dan moet het ook nog uitgerekend worden hoeveel hij/zij moet betalen. En dan op verzenden klikken (en moet ie dus automatisch naar onze mail gaan en het liefst moeten de klanten dus weer direct een mail krijgen dat hun mail in behandeling wordt genomen).

Maar how the fuck ga ik beginnen ? En is dit wel een handig idee wat ik hier beschrijf?
A little knowledge is a dangerous thing.
  woensdag 11 maart 2009 @ 17:13:46 #249
58834 Catbert
The evil HR Director.
pi_66941227
quote:
Op woensdag 11 maart 2009 16:54 schreef -SG- het volgende:
Maar how the fuck ga ik beginnen ? En is dit wel een handig idee wat ik hier beschrijf?
Begin eens met een formulier waar mensen die kaarten kunnen bestellen. Dus een formulier met mailadres, aantal en concert, en sla dat dan op in een database. Als je dat hebt, heb je een goed begin. Als je dat niet uit kunt vogelen, is het zaak dat je genoeg zelfstudie doet om het wel te kunnen.
"[...] a large number of the teenagers claiming Asperger's are, in fact, merely dicks."
  woensdag 11 maart 2009 @ 17:32:06 #250
192856 -SG-
PSV Eindhoven!
pi_66941760
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
<html>
<
head>
<
title>Ticketservice</title>
</
head>

<
body>
<
form name "form1">
    
voornaam: <input type="text"><br>
    
achternaam: <input type="text"><br>
</
form>
</
body>
</
html>
?>


Klopt dit? Zo heb ik toch vak waar je je naam in kan schrijven toch?
A little knowledge is a dangerous thing.
  woensdag 11 maart 2009 @ 18:48:53 #251
85919 Likkende_Lassie
Doe eens wat aan je ondertitel
pi_66944345
quote:
Op woensdag 11 maart 2009 17:32 schreef -SG- het volgende:

[ code verwijderd ]

Klopt dit? Zo heb ik toch vak waar je je naam in kan schrijven toch?
Dit dien je buiten de PHP tags te zetten.
Tevens zou ik kiezen voor <form method="POST"> ipv </form>
  woensdag 11 maart 2009 @ 19:04:16 #252
56176 Catch22-
Ben je Blind?!
pi_66944861
en je inputs een name geven is ook wel handig om later eea op te halen

wat de fuck doe je voor opleiding dat je dit niet weet? Ik wil je dag niet verpesten, maar als je nog geen html formulier kan maken dan heb ik weinig vertrouwen in een goede afloop.

En over die singletons; je moet niet letten op wat 'men' zegt dat mag, moet, niet mag en niet moet. Sommige dingen zijn heel lomp, maar je moet gewoon doen wat je zelf prettig vindt. Als het werk is het oke.

Tenzij het ultralomp is, maar vaak zijn zulke gevallen meer smaakkwesties dan kwesties van kunnen/niet kunnen

[ Bericht 39% gewijzigd door Catch22- op 11-03-2009 20:06:10 ]
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66947878
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
<html>
<
head>
<
title>Ticketservice</title>
</
head>

<
body>
<
form name "form1" action=" echo $_SERVER['PHP_SELF']; " method="post">
    
voornaam:   <input type="text" name="vnaam"><br>
    
achternaam: <input type="text" name="anaam"><br>
</
form>
</
body>
</
html>
?>


1
2
3
4
5
6
<?php
result 

echo 
$_POST['vnaam'];
echo 
$_POST['anaam'];
echo 
"deze kun je gebruiken om in een database te stoppen <img class="rde_img_smiley" src="http://i.fok.nl/s/smile.gif" width="15" height="15" alt="" />";
?>


we helpen wel stukje bij beetje
je mist een knopje om op submit te drukken!!

[ Bericht 3% gewijzigd door cablegunmaster op 11-03-2009 22:45:57 ]
Redacted
  woensdag 11 maart 2009 @ 21:23:24 #254
192856 -SG-
PSV Eindhoven!
pi_66949521
Thnx cablegunmaster.

Maar een submit knop kan dat ook zo:

1
2
3
<?php
<input type="submit" value="Verzenden">
?>


?
A little knowledge is a dangerous thing.
pi_66950469
Dude, we zitten hier in het PHP topic, niet in het leer-hier-basic-HTML-topic..
http://www.handleidinghtml.nl/
  woensdag 11 maart 2009 @ 21:51:29 #256
56176 Catch22-
Ben je Blind?!
pi_66950768
sg, ik zou gewoon zon formulier maken dat de uitkomst naar je toe mailt. als je met deze kennis dingen in een db moet gaan opslaan en uitlezen ben je heel lang bezig denk ik
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_66953077
quote:
Op woensdag 11 maart 2009 21:51 schreef Catch22- het volgende:
sg, ik zou gewoon zon formulier maken dat de uitkomst naar je toe mailt. als je met deze kennis dingen in een db moet gaan opslaan en uitlezen ben je heel lang bezig denk ik
valt mee gebeurt ook niet handmatig je denkt teveel met 1 ding een database is ontworpen voor VEEL informatie
Redacted
pi_66953183
quote:
Op woensdag 11 maart 2009 21:51 schreef Catch22- het volgende:
sg, ik zou gewoon zon formulier maken dat de uitkomst naar je toe mailt. als je met deze kennis dingen in een db moet gaan opslaan en uitlezen ben je heel lang bezig denk ik
huh
en wat moet je dan met die mails?
pi_66953209
quote:
Op woensdag 11 maart 2009 21:23 schreef -SG- het volgende:
Thnx cablegunmaster.

Maar een submit knop kan dat ook zo:
[ code verwijderd ]

?
ja en dan ga je of naar dezelfde pagina of naar een andere pagina
en daar pleur je de php neer ^^ zovan we gaan er iets mee doen
Redacted
pi_66953218
quote:
Op woensdag 11 maart 2009 22:47 schreef Xcalibur het volgende:

[..]

huh
en wat moet je dan met die mails?
handmatig invoeren in excell
Redacted
  woensdag 11 maart 2009 @ 23:06:59 #261
56176 Catch22-
Ben je Blind?!
pi_66953938
bijvoorbeeld

denk jij dat hij een half CRM kan opzetten met de kennis die hij heeft? als je nog geen fatsoenlijk input box kan maken kom je echt niet ver met tutorials
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
  donderdag 12 maart 2009 @ 10:48:57 #262
58834 Catbert
The evil HR Director.
pi_66962655
quote:
Op woensdag 11 maart 2009 22:44 schreef cablegunmaster het volgende:
valt mee gebeurt ook niet handmatig je denkt teveel met 1 ding een database is ontworpen voor VEEL informatie
Gast, hij bedoelt dat SG dan een hele tijd bezig is met de implementatie, vooral omdat hij niks weet en alles voorgekauwd wil hebben.
"[...] a large number of the teenagers claiming Asperger's are, in fact, merely dicks."
pi_66965892
Als je alles voorgekauwd wil hebben zou ik naar webmastersites gaan en daar zoeken op mailform en downloaden die hap.
  donderdag 12 maart 2009 @ 12:24:53 #264
56176 Catch22-
Ben je Blind?!
pi_66966120
Ja, of een joomla/wordpress install, dat kan iedereen aap
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67054921
Ik heb drie tabellen:

forum, forum_topics en forum_messages.
Nou wil ik eigenlijk in 1 query o.a. de volgende dingen te weten komen: hoeveel topics er in een (sub)forum zitten en hoeveel posts er in een forum zitten.

dat eerste kan ik nog makkelijk voor elkaar krijgen met deze query:
1
2
3
4
5
6
7
8
9
10
11
12
    SELECT 
      f.id, 
      f.code, 
      f.name, 
      f.subject, 
      f.main, 
      f.access,
      COUNT(ft.id) as topics
    FROM 
      forums AS f
    LEFT JOIN forum_topics AS ft ON f.id = ft.forum
    GROUP BY ft.forum

1
2
3
4
5
+----+------+-----------+--------------------------+------+--------+--------+
| id | code | name      | subject                  | main | access | topics |
+----+------+-----------+--------------------------+------+--------+--------+
|  1 | TEST | Testforum | Dit is maar voor de test |    1 |      0 |      3 |
+----+------+-----------+--------------------------+------+--------+--------+


Als ik echter ook nog het aantal posts in het hele subforum wil weten, wordt het me te moeilijk. De volgende query doet het in elk geval niet:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    SELECT 
      f.id, 
      f.code, 
      f.name, 
      f.subject, 
      f.main, 
      f.access,
      COUNT(ft.id),
      COUNT(fm.id)
    FROM 
      forums AS f
    LEFT JOIN forum_topics AS ft ON f.id = ft.forum
    LEFT JOIN forum_messages AS fm ON ft.id = fm.topic
    GROUP BY ft.forum, fm.topic

1
2
3
4
5
6
7
+----+------+-----------+--------------------------+------+--------+--------+----------+
| id | code | name      | subject                  | main | access | topics | messages |
+----+------+-----------+--------------------------+------+--------+--------+----------+
|  1 | TEST | Testforum | Dit is maar voor de test |    1 |      0 |     12 |       12 |
|  1 | TEST | Testforum | Dit is maar voor de test |    1 |      0 |      2 |        2 |
|  1 | TEST | Testforum | Dit is maar voor de test |    1 |      0 |      7 |        7 |
+----+------+-----------+--------------------------+------+--------+--------+----------+


Voor de duidelijkheid: het aantal topics = 3 en het aantal berichten = 21

Hoe los ik dit op?

[ Bericht 0% gewijzigd door daReaper op 14-03-2009 23:10:37 ]
Trotse poster van het 37000000ste bericht ^O^
  zaterdag 14 maart 2009 @ 23:10:40 #266
75592 GlowMouse
l'état, c'est moi
pi_67055078
Dit moet je niet in één query willen, en kun je beter gedenormaliseerd opslaan in de forumtabel.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67055532
Na nog wat speurwerk kwam ik de functie COUNT(DISTINCT ...) tegen, nu werkt het prima:
1
2
3
4
5
6
7
8
9
10
11
12
13
    SELECT 
      f.id, 
      f.code, 
      f.name, 
      f.subject, 
      f.main, 
      f.access,
      COUNT(DISTINCT ft.id) as topics,
      COUNT(fm.id) as messages
    FROM 
      forums AS f
    LEFT JOIN forum_topics AS ft ON f.id = ft.forum
    LEFT JOIN forum_messages AS fm ON ft.id = fm.topic

1
2
3
4
5
+----+------+-----------+--------------------------+------+--------+--------+----------+
| id | code | name      | subject                  | main | access | topics | messages |
+----+------+-----------+--------------------------+------+--------+--------+----------+
|  1 | TEST | Testforum | Dit is maar voor de test |    1 |      0 |      3 |       21 |
+----+------+-----------+--------------------------+------+--------+--------+----------+
quote:
Op zaterdag 14 maart 2009 23:10 schreef GlowMouse het volgende:
Dit moet je niet in één query willen, en kun je beter gedenormaliseerd opslaan in de forumtabel.
Waarom raadt je deze manier af?
Trotse poster van het 37000000ste bericht ^O^
  zaterdag 14 maart 2009 @ 23:30:51 #268
75592 GlowMouse
l'état, c'est moi
pi_67055749
quote:
Op zaterdag 14 maart 2009 23:23 schreef daReaper het volgende:
[..]

Waarom raadt je deze manier af?
Omdat het traag is en je dat gaat merken wanneer je wat meer bezoekers of een wat grotere poststabel krijgt. Kijk eens naar de db-structuur van enkele fora (die van myreact en phpbb kun je zo inzien zonder installatie) om ideeën op te doen.
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
  zondag 15 maart 2009 @ 00:33:36 #269
62215 qu63
..de tijd drinkt..
pi_67057664
Ik wil een feedback form naar mezelf mailen. Ik heb hier een keuze veld in waar je meerdere items aan kunt klikken
1
2
3
4
5
6
7
8
9
10
11
12
13
Extra boek toevoegen:<select name="boek" size="5" multiple="multiple" id="boek">
                  <option value="1">Alleen voor vaders €10,45</option>
                  <option value="2">Bijdehandboekje voor vaders €8,20</option>
                  <option value="3">Baby management voor mannen €16,90</option>
                  <option value="4">De negenmaandengids voor mannen €21,90</option>
                  <option value="5">Topvaders €17,95</option>
                  <option value="6">De 60 minuten vader €8,90</option>
                  <option value="7">Vader zijn met hart en handen €12,85</option>
                  <option value="8">Leuke spelletjes voor baby en papa €13,45</option>
                  <option value="9">62 dingen die een beetje vader echt moet kunnen €11,90</option>
                  <option value="10">De ideale vader bestaat niet €11,90</option>
                  <option value="11">Papa worden €9,90</option>
               </select>

Hoe kan ik dit nou netjes in een mailtje zetten?
Ik heb nu dit
1
2
3
4
5
6
7
<?php
$boek 
= array($_POST['boek']);
foreach(
$boek as $b)
            {
                echo 
$message .= "Extra boek: <a href=\"boek.php?id=$b\">Bestel</a>\n";
            }
?>

maar dat werkt dus niet..

Iemand een tip?
En hoe krijg ik die link werkend in mn mail?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_67060002
quote:
Op zondag 15 maart 2009 00:33 schreef qu63 het volgende:
Ik wil een feedback form naar mezelf mailen. Ik heb hier een keuze veld in waar je meerdere items aan kunt klikken
[ code verwijderd ]

Hoe kan ik dit nou netjes in een mailtje zetten?
Ik heb nu dit
[ code verwijderd ]

maar dat werkt dus niet..

Iemand een tip?
En hoe krijg ik die link werkend in mn mail?
Dit zou volgens mij moeten werken.

1<select name="boek[]" size="5" multiple="multiple" id="boek">


1
2
3
4
foreach($_POST['boek'] as $b)
            {
                echo "Extra boek: <a href=\"boek.php?id=$b\">Bestel</a>\n";
            }
  zondag 15 maart 2009 @ 03:11:17 #271
62215 qu63
..de tijd drinkt..
pi_67060133
quote:
Op zondag 15 maart 2009 02:56 schreef spaceninjapirate het volgende:

[..]

Dit zou volgens mij moeten werken.
[ code verwijderd ]


[ code verwijderd ]
Mja, dan krijg ik als ik 2 en 3 geselcteerd heb:
1
2
3
Extra boek: <a href="boek.php?id=2">Bestel</a><br />
Extra boek: <a href="boek.php?id=2">Bestel</a><br />
Extra boek: <a href="boek.php?id=3">Bestel</a><br />

Dus 2x nummer 2..

print_r() geeft
1
2
3
4
5
Array
(
    [0] => 2
    [1] => 3
)

Dus dat snap ik ff niet..
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_67073318
Ik heb net nog even getest maar mijn lokale test vestandje werkt volgens mij gewoon. Krijg je het zelfde effect bij deze code?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
if(isset($_POST['submit'])){
   foreach($_POST['boek'] as $b){
               echo "Extra boek: <a href=\"boek.php?id=$b\">Bestel</a><br/>\n";
   }
}
?>
<form action="#" method="post">
  <select name="boek[]" size="5" multiple="multiple" id="boek">
    <option value="1">Alleen voor vaders ¤10,45</option>
    <option value="2">Bijdehandboekje voor vaders ¤8,20</option>
    <option value="3">Baby management voor mannen ¤16,90</option>
    <option value="4">De negenmaandengids voor mannen ¤21,90</option>
  </select>
  <input type="submit" name="submit" value="submit" />
</form>
  zondag 15 maart 2009 @ 17:56:14 #273
62215 qu63
..de tijd drinkt..
pi_67076328
quote:
Op zondag 15 maart 2009 16:22 schreef spaceninjapirate het volgende:
Ik heb net nog even getest maar mijn lokale test vestandje werkt volgens mij gewoon. Krijg je het zelfde effect bij deze code?
[ code verwijderd ]
Kom er achter dat ik teste met
1
2
3
<?php
echo $message .= blablabla
?>

Waardoor het dus steeds langer werd :')

Thanks anyways!
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
pi_67122895
Ik ben nog maar kort bezig met het maken van websites en scripting en drgelijke, ik ben nu met een website bezig waar ik graag een soort test op wil zetten, ik had het volgedne in mijn hoofd:
een stuk of 10 tot 20 vragen met meerkeuze antwoorden varieerend van 2 tot 10 antwoord mogelijkheden, en aan de hand van die vragen moet er een advies uitkomen. bijvoorbeeld:
vraag1 hoe oud bent u?
0-18
19-32
33-50
50+
vraag2 bent u beweust met uw milieu bezig
heel veel
veel
normaal
een beetje
weinig
heel weinig
niet
vraag3 heeft u veel kleren
ja
nee
gemiddeld

de volgende adviesen zijn er dan.

1. u kunt het beste voor strijkijzer 5 gaan ........
2 u kunt het beste strijkijzer 3b kiezen
3 het beste advies voor u is versie 3v, deze is goedkoop, handig in gebruik en is mileubewusst.

doormiddel van een waarde die elk antwoord heeft moet er dus een advies uit komen die het beste past bij de ingevulde antwoorden, hoop dat het zo een beetje te begrijpen is?

heb ook geen idee of het in dit topic thuis hoort excuses als het fout staat!
maar kan iemand mij hiermee helpen een voorbeeld script of iets dergelijks. het liefst wil ik de test via mijn eigen site houden dus geen externe link na een andere site voor de test maar echt de test op mijn site.
pi_67122971
quote:
Op maandag 16 maart 2009 23:57 schreef jeweetz17 het volgende:
Ik ben nog maar kort bezig met het maken van websites en scripting en drgelijke, ik ben nu met een website bezig waar ik graag een soort test op wil zetten, ik had het volgedne in mijn hoofd:
een stuk of 10 tot 20 vragen met meerkeuze antwoorden varieerend van 2 tot 10 antwoord mogelijkheden, en aan de hand van die vragen moet er een advies uitkomen. bijvoorbeeld:
vraag1 hoe oud bent u?
0-18
19-32
33-50
50+
vraag2 bent u beweust met uw milieu bezig
heel veel
veel
normaal
een beetje
weinig
heel weinig
niet
vraag3 heeft u veel kleren
ja
nee
gemiddeld

de volgende adviesen zijn er dan.

1. u kunt het beste voor strijkijzer 5 gaan ........
2 u kunt het beste strijkijzer 3b kiezen
3 het beste advies voor u is versie 3v, deze is goedkoop, handig in gebruik en is mileubewusst.

doormiddel van een waarde die elk antwoord heeft moet er dus een advies uit komen die het beste past bij de ingevulde antwoorden, hoop dat het zo een beetje te begrijpen is?

heb ook geen idee of het in dit topic thuis hoort excuses als het fout staat!
maar kan iemand mij hiermee helpen een voorbeeld script of iets dergelijks. het liefst wil ik de test via mijn eigen site houden dus geen externe link na een andere site voor de test maar echt de test op mijn site.
wij moeten het voor jou maken ??
Redacted
pi_67123171
quote:
Op maandag 16 maart 2009 23:57 schreef jeweetz17 het volgende:

maar kan iemand mij hiermee helpen (...)
Hoe ver ben je al? Wat werkt er (nog) niet?
pi_67123223
quote:
Op maandag 16 maart 2009 23:57 schreef jeweetz17 het volgende:
Ik ben nog maar kort bezig met het maken van websites en scripting en drgelijke, ik ben nu met een website bezig waar ik graag een soort test op wil zetten, ik had het volgedne in mijn hoofd:
een stuk of 10 tot 20 vragen met meerkeuze antwoorden varieerend van 2 tot 10 antwoord mogelijkheden, en aan de hand van die vragen moet er een advies uitkomen. bijvoorbeeld:

... knip ...

doormiddel van een waarde die elk antwoord heeft moet er dus een advies uit komen die het beste past bij de ingevulde antwoorden, hoop dat het zo een beetje te begrijpen is?

heb ook geen idee of het in dit topic thuis hoort excuses als het fout staat!
maar kan iemand mij hiermee helpen een voorbeeld script of iets dergelijks. het liefst wil ik de test via mijn eigen site houden dus geen externe link na een andere site voor de test maar echt de test op mijn site.
Klinkt leuk. Wat heb je zelf al geknutseld? Waar loop je vast? Of verwacht je dat wij zo'n script voor je in elkaar zetten? Ik kan natuurlijk alleen voor mezelf spreken, maar ik denk dat je hier dan fout zit.
pi_67123354
quote:
Op dinsdag 17 maart 2009 00:09 schreef Light het volgende:

[..]

Klinkt leuk. Wat heb je zelf al geknutseld? Waar loop je vast? Of verwacht je dat wij zo'n script voor je in elkaar zetten? Ik kan natuurlijk alleen voor mezelf spreken, maar ik denk dat je hier dan fout zit.
Redacted
  dinsdag 17 maart 2009 @ 10:07:51 #279
56176 Catch22-
Ben je Blind?!
pi_67128471
wat is je budget ?
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67129364
quote:
Op dinsdag 17 maart 2009 10:07 schreef Catch22- het volgende:
wat is je budget ?
pi_67129567
quote:
Op dinsdag 17 maart 2009 10:07 schreef Catch22- het volgende:
wat is je budget ?
Dat dus.

Mensen met PHP programmatuur helpen, die er zelf absoluut niet uit komen nadat ze er de nodige moeite in gestoken hebben, prima. Daar is dit topic voor. Maar ik krijg het een beetje op m'n heupen van die lui die zich totaal niet in programmeren willen verdiepen, maar hier 'effe' een webshop- en/of pollsysteem voorgekauwd willen hebben. Dat laat je maar aan een professional over.
pi_67129802
Wij bouwen niets op verzoek he

Daarnaast; ugh. Ik moet mijn DB class echt nog een keer aanpassen, ding is zo lelijk
  dinsdag 17 maart 2009 @ 11:53:06 #283
56176 Catch22-
Ben je Blind?!
pi_67131762
quote:
Op dinsdag 17 maart 2009 10:52 schreef Scorpie het volgende:
Wij bouwen niets op verzoek he
ik wel hoor
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67133465
quote:
Op dinsdag 17 maart 2009 11:53 schreef Catch22- het volgende:

ik wel hoor
Ik ook Maar dan wel tegen 80 euro per uur
  FOK!-Schrikkelbaas dinsdag 17 maart 2009 @ 12:54:47 #285
1972 Swetsenegger
Egocentrische Narcist
pi_67133620
quote:
Op dinsdag 17 maart 2009 12:50 schreef Roy_T het volgende:

[..]

Ik ook Maar dan wel tegen 80 euro per uur
Ik bouw het voor een vast bedrag van 750,- ex btw
  dinsdag 17 maart 2009 @ 12:55:14 #286
56176 Catch22-
Ben je Blind?!
pi_67133628
Als er geen factuur hoeft te komen doe ik het voor de helft

reactie op roy natuurlijk
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67134141
Ik doe niet aan vaste bedragen en zonder factuur
pi_67154309
Volgens mij ben ik gek aan het worden... Ziet iemand hier mijn fout?

1
2
3
4
5
6
7
8
9
10
11
12
13
  if (sizeof($data) > $ppp) {
    $pages = array("F_PAGES" => array());
    for ($a = 0; $a < ceil(sizeof($data)/$ppp); $a++) {
      echo "$curpage == $a+1: ".($curpage == ($a+1))."<br />\n";
      array_push($pages["F_PAGES"], 
        array(
          "F_PAGE_NO" => $a+1,
          "F_PAGE_URL" => ($curpage == ($a+1)) ? "" : $basedir.$page."/".$fullurl,
        )
      );
    }
    print_r($pages);
  }


output:
1 == 0+1: 1
1 == 1+1: 1

Ik snap er helemaal niets van... Sinds wanneer is 1 gelijk aan 1+1 ?
Trotse poster van het 37000000ste bericht ^O^
  dinsdag 17 maart 2009 @ 23:03:20 #289
75592 GlowMouse
l'état, c'est moi
pi_67154561
1
2
3
4
5
6
<?php
$curpage 
1;
for(
$a=0$a<=2$a++) {
    echo 
"$curpage == $a+1: ".($curpage == ($a+1))."<br />\n";
}
?>

1
2
3
1 == 0+1: 1
1 == 1+1: 
1 == 2+1: 

Zoals het hoort. Wat zegt var_dump over $curpage?
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67154648
quote:
Op dinsdag 17 maart 2009 23:03 schreef GlowMouse het volgende:

[ code verwijderd ]


[ code verwijderd ]

Zoals het hoort. Wat zegt var_dump over $curpage?
Bedoel je daarmee de output van "die(var_dump($curpage));"? Dat is: bool(true)
Trotse poster van het 37000000ste bericht ^O^
pi_67154683
quote:
Op dinsdag 17 maart 2009 23:06 schreef daReaper het volgende:

[..]

Bedoel je daarmee de output van "die(var_dump($curpage));"? Dat is: bool(true)
Kijk, daar heb je me al te pakken

Ergens anders had ik staan:
$curpage = $_GET['page'] || 1;

gewenning van Perl

Bedankt voor de tip!
Trotse poster van het 37000000ste bericht ^O^
  dinsdag 17 maart 2009 @ 23:07:17 #292
75592 GlowMouse
l'état, c'est moi
pi_67154692
Opgelost dus

$curpage = isset($_GET['page']) ? intval($_GET['page']) : 1;
eee7a201261dfdad9fdfe74277d27e68890cf0a220f41425870f2ca26e0521b0
pi_67154796
quote:
Op dinsdag 17 maart 2009 23:07 schreef GlowMouse het volgende:
Opgelost dus

$curpage = isset($_GET['page']) ? intval($_GET['page']) : 1;
Jep, gelukkig nu ik nog haren over heb.

Waar ik dus mee in de war was:

1
2
C:\Users\Bart>perl -e "$x = 1; print ($x || 1); $x = 2; print ($x || 1); $x = 0; print ($x || 1);"
121
Trotse poster van het 37000000ste bericht ^O^
  woensdag 18 maart 2009 @ 09:51:20 #294
56176 Catch22-
Ben je Blind?!
pi_67161265
en als de page geen integer is ?
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
  woensdag 18 maart 2009 @ 09:56:13 #295
136730 PiRANiA
All thinking men are atheists.
pi_67161401
quote:
Op dinsdag 17 maart 2009 23:07 schreef GlowMouse het volgende:
Opgelost dus

$curpage = isset($_GET['page']) ? intval($_GET['page']) : 1;
hoe noem je die notitie? weet je dat?
pi_67161451
quote:
Op woensdag 18 maart 2009 09:56 schreef PiRANiA het volgende:

[..]

hoe noem je die notitie? weet je dat?
Ternary operation.

http://en.wikipedia.org/wiki/Ternary_operation

Is overigens niet alleen mogelijk in PHP. Alle grotere programmeertalen ondersteunen ternary operations.
pi_67161603
En vanaf PHP 5.3:

1
2
3
<?php
$var1 
?: $var2
?>


Als $var1 == true, return $var1, anders return $var2 :)
  woensdag 18 maart 2009 @ 10:10:35 #298
56176 Catch22-
Ben je Blind?!
pi_67161795
dit is ook logica van het jaar 0, maar dat is php he

zulke oplossingen zijn niet al te best voor de leesbaarheid (voor jezelf en voor een ander), je kan het dus beter voorkomen.
Heel veel groetjes, Catch22
En zoals mijn opa zei: "Al is het meisje nog zo mooi, haar poep stinkt ook". Rust Zacht opa..
Met GHB nooit meer nee
Storneren een optie?
pi_67161880
quote:
Op woensdag 18 maart 2009 10:10 schreef Catch22- het volgende:
dit is ook logica van het jaar 0, maar dat is php he

zulke oplossingen zijn niet al te best voor de leesbaarheid (voor jezelf en voor een ander), je kan het dus beter voorkomen.
Ik vind een ternary opteration leesbaarder en overzichtelijker dan een hele if(x==y){...}else{...} constructie, eigenlijk. Maar goed, ieder zijn meug.
pi_67162459
quote:
Op woensdag 18 maart 2009 10:10 schreef Catch22- het volgende:
dit is ook logica van het jaar 0, maar dat is php he
Erm... zitten ternary operations niet in zo'n beetje iedere taal
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')