abonnement Unibet Coolblue Bitvavo
pi_38132594
quote:
Op dinsdag 23 mei 2006 18:34 schreef JeRa het volgende:
@LeeHarveyOswald

Userid is hopelijk toch geen string? Geen quotes eromheen dan

Verder kun je dat oplossen door ' bericht = \'' . addslashes($bericht) . '\' te gebruiken.
Het is een string, maar dat werkte eerst wel. Alleen de samenstelling van $bericht is verandert...
  dinsdag 23 mei 2006 @ 19:07:45 #152
32768 DionysuZ
Respect my authority!
pi_38132769
dat is toch precies hoe sql injecties werken? als je een variabele $test = "bla' or '1'='1"; hebt die je gebruikt in een sql query: "SELECT * FROM test WHERE veld = '{$test}'"; dan heb je toch gewoon een succesvolle manier van sql injectie? addslashes dus
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_38132776
quote:
Op dinsdag 23 mei 2006 18:34 schreef JeRa het volgende:
@LeeHarveyOswald

Userid is hopelijk toch geen string? Geen quotes eromheen dan

Verder kun je dat oplossen door ' bericht = \'' . addslashes($bericht) . '\' te gebruiken.
mysql_real_escape_string
  dinsdag 23 mei 2006 @ 19:11:31 #154
32768 DionysuZ
Respect my authority!
pi_38132870
quote:
Op dinsdag 23 mei 2006 19:08 schreef fokME2 het volgende:

[..]

mysql_real_escape_string
beter
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_38133120
quote:
Op dinsdag 23 mei 2006 19:07 schreef DionysuZ het volgende:
dat is toch precies hoe sql injecties werken? als je een variabele $test = "bla' or '1'='1"; hebt die je gebruikt in een sql query: "SELECT * FROM test WHERE veld = '{$test}'"; dan heb je toch gewoon een succesvolle manier van sql injectie? addslashes dus
is het niet dat magic quotes aan staan, en dat op bericht na alle gegevens ook al uit de databse worden gehaald, en dus niet dmv user veld
  dinsdag 23 mei 2006 @ 19:28:08 #156
74523 BaggerUser
ModderFokker!
pi_38133517
hoi ik heb een klein probleempje het is volgebns mij eigenlijk een javascript fout maar kan ook zijn dat het aan de php ligt dus ik plaats hem maar even hier.. :

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
<?php
php
include("config.php");
//error_reporting(E_ALL);


php
        
        
        $i
= '0';
        
$sql = 'SELECT * FROM `occasions` ORDER BY `ID` ASC';
        
$result = mysql_query($sql);
        while (
$row = mysql_fetch_array($result)) {

        if(
$i / 2 == round($i / 2))
        {
        
$class = 'occasions_wrapper_even';
        }
        else
        {
        
$class = 'occasions_wrapper_oneven';        
        }
        

        
$specificaties = nl2br($row['specificaties']);
        
            
$specificaties = nl2br($row['specificaties']);
            
$occasions = $occasions."
                
                <div class='occasions_wrapper'>
                    <table>
                    <tr>
                        <td colspan='4' onClick='showEigenschappen("
.$row[id].")'>Meer info</td>
                    </tr>                    
                    <tr>
                    <td width='120' rowspan='2' ><img src='thumbs/"
.$row[foto]."' > <img src='thumbs/".$row[foto]."' width='50px' height='50px' >&nbsp;<img src='thumbs/".$row[foto]."' width='50px' height='50px' ></td>
                        <td class='occasions_info'>
                            Merk: <br />    
                            Type: <br />
                            Kilometerstand: <br />
                            Vraagprijs: <br />
                        </td>
                        <td class='occasions_inhoud'>
                            $merk <br />
                            "
.$row['type']." <br />
                            "
.$row['kilometerstand']." <br />
                            &euro;&nbsp;<font class='prijs'>"
.$row['vraagprijs'].",-</font> <br />                                
                        </td>
                        <td class='occasions_info' valign='top'>
                            Kleur: <br />
                            Brandstof: <br />
                            Bouwjaar: <br />        
                        </td>
                        <td class='occasions_inhoud'>
                             "
.$row['kleur']." <br />
                            "
.$row['brandstof']." <br />
                            "
.$row['bouwjaar']." <br />
                        </td>
                    </tr>
                    <tr>
                        <td colspan='4' align='left' valign='top'><div class='specs_hidden' id='occasion$i' ><br /><p><b>Eigenschappen:</b></p><p>$specificaties</p></div></td>
                      </tr>
                    <tr>
                        <td colspan='4'>bewerken | verwijderen | foto-toevoegen</td>
                    </tr>
                    </table>
                </div>
                    <br />                

            "
;
        
$i++;
        }


php

    $dag
= date(D);
    
    
$body = "
    
    <div class='MAIN_WRAPPER'>
        <div class='TOP'></div>
        <div class='TOP_SPLITTER'></div>
        <div class='MAIN'>
            <div class='TOP_CONTENT'></div>
        
            <div class='CONTENT'>
                <div class='CONTENT_TITEL'><p>&nbsp;</p><p><img src='site_images/plus.gif' alt=''/> occasion overzicht</p></div>
                <div class='CONTENT_TEXT'>

                    $occasions

                </div>    
                <div class='CONTENT_BOTTOM'>blaap.nl</div>
                <p>&nbsp;</p>
                
            </div>
        </div>
        <div class='BOTTOM'></div>
    </div>
    "
;


&
lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&
lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&
lt;head&gt;
&
lt;title&gt;Untitled Document&lt;/title&gt;
&
lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /&gt;
&
lt;link href="sessie.css" type="text/css" rel="stylesheet" /&gt;


  &
lt;script language="javascript"&gt;
  
  var
i = 0;
  
  function
showEigenschappen(nummer) {
    
document.getElementById('occasion'+nummer).display = 'block';
    
  }

&
lt;/script&gt;


&
lt;/head&gt;

&
lt;body&gt;

php echo"$body";


&
lt;/body&gt;
&
lt;/html&gt;
?>


maar hij pakt de javascript functie niet:

function showEigenschappen(nummer) {
document.getElementById('occasion'+nummer).display = 'block';
}

hij zegt dattie geen properties heeft
terwijl dit stukje wel in een ander script van mij werkt d ebedoeling is dat hij de div pas laat zien als ik er op "meer info " is geklikt..
De enige echte BaggerUser!
Riemen
fiets kopen
  dinsdag 23 mei 2006 @ 19:32:11 #157
32768 DionysuZ
Respect my authority!
pi_38133699
het is document.getElementById('occasion'+nummer).style.display = 'block' en jah het is javascript
□ Reality is merely an illusion,albeit a very persistent one-A.Einstein
■ Of ik ben gek of de rest van de wereld.Ik denk zelf de rest van de wereld-Rudeonline
□ The war is not meant to be won.It is meant to be continuous-G.Orwell
pi_38134359
quote:
Op dinsdag 23 mei 2006 19:08 schreef fokME2 het volgende:

[..]

mysql_real_escape_string
Ook hier weer, als je een écht complete oplossing wilt dan kun je beter met prepared statements werken

1
2
3
4
5
6
7
8
9
<?php
$db
= new PDO('mysql:host=server;dbname=database', 'user', 'pw');

$query = 'SELECT COUNT(id) AS num FROM tabel WHERE bericht = :bericht';
$stmt = $db-&gt;prepare($sql);

$stmt-&gt;bindParam(':bericht', $bericht);
$stmt-&gt;execute();
?>

Dit houdt rekening met dat $bericht een string is en escapet de string, afhankelijk van de gebruikte connection character set met de MySQL-database

En nee, PDO is niet altijd beschikbaar (maar sinds PHP5 wel, mits geladen)
  dinsdag 23 mei 2006 @ 19:47:13 #159
12880 CraZaay
prettig gestoord
pi_38134363
quote:
Op dinsdag 23 mei 2006 18:32 schreef LeeHarveyOswald het volgende:
Ik zit weer eens met een probleem...

de volgende query levert problemen op:
[ code verwijderd ]

Iemand een idee wat er mis gaat? Tq:)
'Je mag ook berichten met inhoud plaatsen hoor <img src = 'emoticons/tongue.gif'> '

Wat dacht je van het escapen van de single quotes in je string?
pi_38134485
quote:
Op dinsdag 23 mei 2006 19:47 schreef CraZaay het volgende:

[..]

'Je mag ook berichten met inhoud plaatsen hoor <img src = 'emoticons/tongue.gif'> '

Wat dacht je van het escapen van de single quotes in je string?
Dit deel heb ik nu werkend, alleen nu krijg ik:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /usr/home/jeroen/www/test/chat.php on line 155


Teksten worden (goed) toegevoegd en goed weergegeven, alleen dus deze melding... Regel 155 is leeg, bovenstaande code is:


1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$sql_query
= "SELECT bericht FROM slowchat WHERE userid={$MemCookID} and bericht = {$bericht} and datumtijd >={$uurnu} ";
$result = mysql_query($sql_query);
if(
mysql_num_rows($result) &gt; 0) {

// AFBREKEN!

Echo "Anti Flood! je kan niet snel achter elkaar 2x hetzelfde bericht plaatsen! ";


}
?>
pi_38134866
LHO, je moet nog quotes om je {$bericht} heen zetten
pi_38135208
quote:
Op dinsdag 23 mei 2006 19:59 schreef JeRa het volgende:
LHO, je moet nog quotes om je {$bericht} heen zetten
Waar precies?

In mn vorige post staan ze nl. al...
pi_38135499
quote:
Op dinsdag 23 mei 2006 20:07 schreef LeeHarveyOswald het volgende:

[..]

Waar precies?

In mn vorige post staan ze nl. al...
1and bericht = {$bericht}

Dáár
1and bericht = '{$bericht}'
pi_38135689
quote:
Op dinsdag 23 mei 2006 19:47 schreef JeRa het volgende:

[..]

Ook hier weer, als je een écht complete oplossing wilt dan kun je beter met prepared statements werken
[ code verwijderd ]

Dit houdt rekening met dat $bericht een string is en escapet de string, afhankelijk van de gebruikte connection character set met de MySQL-database

En nee, PDO is niet altijd beschikbaar (maar sinds PHP5 wel, mits geladen)
Dat ziet er wel flink omslachtig uit
pi_38135902
quote:
Op dinsdag 23 mei 2006 20:16 schreef JeRa het volgende:

[..]
[ code verwijderd ]

Dáár
[ code verwijderd ]
aangepast, maakt geen verschil. Result blijft trouwens leeg..
pi_38136033
het waren mn quotes bij datum..
pi_38136144
quote:
Op dinsdag 23 mei 2006 20:20 schreef fokME2 het volgende:

[..]

Dat ziet er wel flink omslachtig uit
Is het ook wel op het eerste gezicht. Maar het zorgt ervoor dat je nooit ende nimmer meer SQL injections kunt creëeren en als je in een situatie komt waarbij je een query vaker achter elkaar moet uitvoeren, hoef je met prepared statements al het parsewerk maar één keer uit te laten voeren wat de performance natuurlijk ten goede komt
pi_38137245
@JeRa hoe bedoel je al het parsewerk maar één keer uit te laten voeren?
  dinsdag 23 mei 2006 @ 20:59:04 #169
11753 Roonaan
Strictly
pi_38137250
quote:
Op dinsdag 23 mei 2006 18:44 schreef JeRa het volgende:

[..]

Dát is natuurlijk helemaal waar. Ikzelf werk alleen in PHP5 en draai zo nu en dan PHP-cvs, dan denk je daar niet eens meer over na
Qua marktverhouding ligt 5 inmiddels rond de 30% en groeiende toch?
  dinsdag 23 mei 2006 @ 21:01:33 #170
693 ChOas
** Warning: Choking hazard **
pi_38137345
"I contend that we are both atheists. I just believe in one fewer god than you do.
When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."

[Stephen Roberts]
pi_38137544
quote:
Op dinsdag 23 mei 2006 20:59 schreef fokME2 het volgende:
@JeRa hoe bedoel je al het parsewerk maar één keer uit te laten voeren?
Als je een query naar de server stuurt moet dat via de MySQL-backend voor PHP via een verbinding naar de MySQL-server, alwaar hij ingelezen, verwerkt en geoptimaliseert moet worden

Als je een query hebt die je 100x moet uitvoeren (bv. een INSERT of DELETE) dan zorg je met die prepared statements ervoor dat de backend én de server de query alvast kunnen inlezen, verwerken en optimaliseren voor zover mogelijk. Dit kan omdat je alleen de aangegeven variabelen (':bericht' bijvoorbeeld) aanpast en de server hier rekening mee houdt. Op die manier verander je 100x alleen de meegestuurde variabelen en hoeft niet de hele query opnieuw verwerkt te worden
pi_38137570
quote:
Op dinsdag 23 mei 2006 20:59 schreef Roönaän het volgende:

[..]

Qua marktverhouding ligt 5 inmiddels rond de 30% en groeiende toch?
Klopt ongeveer ja, een hoop webhosters zweren nog bij PHP4 omdat de klanten dat vaak ook nog doen
  dinsdag 23 mei 2006 @ 21:11:39 #173
11753 Roonaan
Strictly
pi_38137770
quote:
Op dinsdag 23 mei 2006 21:07 schreef JeRa het volgende:
Klopt ongeveer ja, een hoop webhosters zweren nog bij PHP4 omdat de klanten dat vaak ook nog doen
Mogelijkerwijs ook omdat de "extra software" die ze aanbieden php4 zijn; plesk, phpnuke, phpbb, mambo. Maar dat zal met de tijd ook wel veranderen.

Het gaat leuk worden als zend framework geïntegreerd wordt bij de hosters en dat ik bij een webhoster via plesk mijn emailadres+gsm op kan geven waarnaar zend framework sms't en mailt over trage queries en stervende websites
pi_38139046
quote:
Op dinsdag 23 mei 2006 21:07 schreef JeRa het volgende:

[..]

Klopt ongeveer ja, een hoop webhosters zweren nog bij PHP4 omdat de klanten dat vaak ook nog doen
Ik wacht even af wat mijn hoster meldt over PHP5 support.
pi_38139163
quote:
Op dinsdag 23 mei 2006 21:11 schreef Roönaän het volgende:

[..]

Mogelijkerwijs ook omdat de "extra software" die ze aanbieden php4 zijn; plesk, phpnuke, phpbb, mambo. Maar dat zal met de tijd ook wel veranderen.
Ze kunnen best php4 en php5 naast elkaar draaien. En daarbij moeten ze geen phpbb aanbieden.
quote:
Het gaat leuk worden als zend framework geïntegreerd wordt bij de hosters en dat ik bij een webhoster via plesk mijn emailadres+gsm op kan geven waarnaar zend framework sms't en mailt over trage queries en stervende websites
Dat klinkt interessant Maar dan kun je ook colocation overwegen natuurlijk.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')