FOK!forum / Digital Corner / [PHP/(My)SQL] voor dummies - Deel 7
the_disheavervrijdag 8 april 2005 @ 23:00

cd niet bijgeleverd

Vorige delen:
[PHP] voor dummies
[PHP] voor dummies - Deel 2
[PHP] voor dummies - Deel 3
[PHP] voor dummies - Deel 4
[PHP] voor dummies - Deel 5
[PHP/(My)SQL] voor dummies - Deel 6

Zie ook:
FAQ - Algemene kleine vragen. Part 2.
http://www.php.net
http://www.php.net/docs.php
http://dev.mysql.com/doc/mysql/en/index.html

Deze OP: http://fok.internix.be/OP/php.txt
Darkomenvrijdag 8 april 2005 @ 23:18
Dan ook maar even in deel 7 plaatsen
Security website

Ik ben van plan een groote website op te zetten met beveiligde en onbeveiligde delen.
Ik wil de beveiliging gaan regelen met een sessie die bij het inloggen word gecreeerd en door te contorleren of alle files wel in het script geladen worden en niet daarbuiten, dmv define.

Of is het misschien beter om ook het ip adres te controleren met het ip adress in de db die bij het inloggen word opgeslagen.

Of een extra cookie voor de site, dit is mijn minst favorite keuze aangezien ik geen idee heb van wat ik dan in de cookie plaats en omdat ik met verschillende subdomeinen werk, dat is in het verleden tot nu toe nu helemaal lekker gegaan.

Daarnaast vroeg ik me af of het slim was aan het eind van elke pagina de db te sluiten
the_disheaverzaterdag 9 april 2005 @ 01:26
Het is me gelukt om http:// of www. substring in een hyperlink te krijgen. Maar wanneer ik bv
http://www.test.nl.
intype, dus met een punt aan het einde, komt die ook in de hyperlink. Kan dat anders?

(antwoord jah: wat FOK doet het wel goed Bij mij komt er dus: http://www.test.nl.) Maar hoe...

Mn Code btw:
1$text = preg_replace('/\s(www\.)(\S+)/', ' <a href="http://\\1\\2" target="_blank">\\1\\2</a>', $text);
mscholzaterdag 9 april 2005 @ 01:57
tvp

ow en iedere goede / duidelijke sitre over regexp is welkom... (wil [ url] [/url] gaan vervangen enzo, de welbekende tags..)
SuperRembozaterdag 9 april 2005 @ 09:50
Zie mijn regexps in [PHP] voor dummies - Deel 5 .

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$regexps = array(
   // http://foo.net => [url=http://foo.net]http://foo.net[/url]
   '#(?<!\[url=)(http://.*?)(?=[.,?:;()<>]*(\s|$))#i'
        => '[url=\1]\1[/url]',

   // www.foo.net => [url=www.foo.net]http://www.foo.net[/url]
   '#(?<!\[url=)(?<!http://)(www\..*?)(?=[.,?:;()<>]*(\s|$))#i'
        => '[url=http://\1]\1[/url]',

   // [url=http://foo.net]Foo[/url] => <a href="http://foo.net">Foo</a>
   '#\[url=(https?://.*?)\](.*?)\[/url\]#i'      
        => '<a href="\1">\2</a>',

   // [url=foo.net]Foo[/url] => <a href="http://foo.net">Foo</a>
   '#\[url=(.*?)\](.*?)\[/url\]#i'               
        => '<a href="http://\1">\2</a>',
);

$output = preg_replace(array_keys($regexps), array_values($regexps), $input);


De manier om http:// en www niet door elkaar te halen is het gebruik van een negative lookbehind assertion

[ Bericht 1% gewijzigd door SuperRembo op 09-04-2005 11:17:47 (be nice to the fok-parser) ]
the_disheaverzaterdag 9 april 2005 @ 10:47
quote:
Op zaterdag 9 april 2005 09:50 schreef SuperRembo het volgende:
Zie mijn regexps in [PHP] voor dummies - Deel 5
Haha, dat zag FOK weer niet...
1http://forum.fok.nl/topic/669725/1/1111#25504972.
wordt wel weer met punt als hyperlink gemaakt... Misschien handig om die laatste punt weg te halen...

Dank overigens, zal ff lezen.
sylvesterrrzaterdag 9 april 2005 @ 12:34
quote:
Op zaterdag 9 april 2005 01:57 schreef mschol het volgende:
tvp

ow en iedere goede / duidelijke sitre over regexp is welkom... (wil [ url] [/url] gaan vervangen enzo, de welbekende tags..)
http://www.regular-expressions.info/
http://en.wikipedia.org/wiki/Regular_expression#External_links
MrLunkzaterdag 9 april 2005 @ 16:33
Hi digi-Fok!ers,

N00b Vraaggie misschien maar help me alsjeblieft ...

Als ik deze url intik:

1http://www.somedomain.com/link.php?link=http://www.externalsite.com


en ik wil de url die dan in $link zit geopend hebben in het bottom frame van de link.php file die er zo uitziet:

1
2
3
4
5
6
7
8
9
10
11
12
<html>
<head>
<title>PHP link.php file</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<frameset rows="93,94">
  <frame src="http://www.somedomain.com/topframe.htm">
  <frame src="$link">
</frameset>

</html>


Hoe moet ik deze code dan aanpassen om dat in PHP te laten werken ?

Wil iemand misschien de code van deze link.php zo aanpassen dat dit werkt ?
Ik heb net een uur zitten rotzooien e het wil maar niet lukken...

Ik wil dit gaan gebruiken in beoordelings tool...

Alvast vet bedankt iig !

Greetz,
Peter Lunk
sylvesterrrzaterdag 9 april 2005 @ 16:44
1
2
3
4
5
6
7
8
9
10
11
12
<html>
<head>
<title>PHP link.php file</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<frameset rows="93,94">
  <frame src="http://www.somedomain.com/topframe.htm">
  <frame src="<?=$_GET['link'];?>">
</frameset>

</html>
ikke_ookzondag 10 april 2005 @ 00:09
wat is het verschil tussen
1
2
3
4
5
6
<frameset rows="93,94">
  <frame src="http://www.somedomain.com/topframe.htm">
  <frame src="<?=$_GET['link'];?>">
</frameset>

</html>


en

1
2
3
4
5
6
<frameset rows="93,94">
  <frame src="http://www.somedomain.com/topframe.htm">
  <frame src="<?echo $_GET['link'];?>">
</frameset>

</html>


?

En gelijk een tvp
sylvesterrrzondag 10 april 2005 @ 00:23
1<?='Hello World';?>

is wat korter dan
1<? echo 'Hello World'; ?>
quote:
echo() also has a shortcut syntax, where you can immediately follow the opening tag with an equals sign. This short syntax only works with the short_open_tag configuration setting enabled.

1I have <?=$foo?> foo.
http://nl3.php.net/manual/en/function.echo.php
MrLunkzondag 10 april 2005 @ 00:48
MrLunk
quote:
Op zaterdag 9 april 2005 16:44 schreef sylvesterrr het volgende:

[ code verwijderd ]
thank you

see how a simple example teaches so much

Greetz,
sv3nzondag 10 april 2005 @ 18:46
quote:
http://www.hio.hen.nl/sem(...)rcolleges/Regexp.ppt
nederlandse powerpoint presentatie over reguliere expressies, kijk maar wat je er aan hebt als je het college niet hebt gehad (wat ik wel heb gehad)
Swetseneggerzondag 10 april 2005 @ 18:49
Een aardige regexp start
En tevens verkapte tvp uiteraard.
SuperRembozondag 10 april 2005 @ 19:01
Sv3n, kan je nog eens uitleggen waarom het gebruik van auto-increment id's niet goed zou zijn?
Swetseneggerzondag 10 april 2005 @ 19:06
quote:
Op zondag 10 april 2005 19:01 schreef SuperRembo het volgende:
Sv3n, kan je nog eens uitleggen waarom het gebruik van auto-increment id's niet goed zou zijn?
Is de vraag nog steeds niet beantwoord?
SuperRembozondag 10 april 2005 @ 19:51
quote:
Op zondag 10 april 2005 19:06 schreef Swetsenegger het volgende:

[..]

Is de vraag nog steeds niet beantwoord?
"Omdat mijn leraren het zeggen" vind ik geen antwoord
DutchBloodmaandag 11 april 2005 @ 07:46
tvp
Darkomenmaandag 11 april 2005 @ 09:05
Niemand een tip voor mijn post?
MouseInteractivemaandag 11 april 2005 @ 17:07
Het zal wel heel simpel zijn (maar daar is dit topic ook voor ), maar ik kom er ff niet op:
Ik heb een string, b.v. twee losse woorden, maar nu wil ik dat alle spaties eruit verwijderd worden, zodat alleen de woorden achter elkaar overblijven als één groot woord.
Hoe doe ik dat?
sylvesterrrmaandag 11 april 2005 @ 17:11
1
2
3
4
5
<?
$str = 'een twee drie vier vijf zes zeven acht negen tien';
$newStr = str_replace(' ', '', $str);
echo $newStr;
?>

output: eentweedrieviervijfzeszevenachtnegentien



[ Bericht 2% gewijzigd door sylvesterrr op 11-04-2005 17:33:33 ]
Jumpmaandag 11 april 2005 @ 17:14
ook nogeen ; achteraan die eerste commandoregel wel
sylvesterrrmaandag 11 april 2005 @ 17:33
quote:
Op maandag 11 april 2005 17:14 schreef Jump het volgende:
ook nogeen ; achteraan die eerste commandoregel wel
uiteraard
MouseInteractivemaandag 11 april 2005 @ 17:36
quote:
Op maandag 11 april 2005 17:11 schreef sylvesterrr het volgende:

[ code verwijderd ]

output: eentweedrieviervijfzeszevenachtnegentien

Shit ja, gewoon str_replace natuurlijk

Bedankt
sabanmaandag 11 april 2005 @ 23:07
Ik wil een functie maken, wanneer ik tags($string); doe dat hij dit uitvoert op $string;

1
2
3
$search  = array ('[b]', '[/b]', '[i]', '[/i]', '[u]', '[/u]', '[ul]', '[/ul]', '[li]', '[/li]');
$replace = array ('<b>', '</b>', '<i>', '</i>', '<u>', '</u>', '<ul>', '</ul>', '<li>', '</li>');
$string = str_replace($search, $replace, $string);


Hiervoor heb ik:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?

$text = "blaat[b]boe[/b]bb";

function tags($text)
{
global $text;

$search  = array ('[b]', '[/b]', '[i]', '[/i]', '[u]', '[/u]', '[ul]', '[/ul]', '[li]', '[/li]');
$replace = array ('<b>', '</b>', '<i>', '</i>', '<u>', '</u>', '<ul>', '</ul>', '<li>', '</li>');
$text = str_replace($search, $replace, $text);
}

tags($text);

?>


Kan ik het functie niet maken zodat ik $text kan veranderen in wat ik wil.
Dus tags($bla); of tags($foo);
Want mn string is niet altijd $text ...
devzeromaandag 11 april 2005 @ 23:13
Zonder global

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
php
$text
= "blaat[b]boe[/b]bb";

function
tags($arg) {
        
$search  = array ('[b]', '[/b]', '[i]', '[/i]', '[u]', '[/u]', '[ul]', '[/ul]', '[li]', '[/li]');
        
$replace = array ('<b>', '</b>', '<i>', '</i>', '<u>', '</u>', '<ul>', '</ul>', '<li>', '</li>');
        return
str_replace($search, $replace, $arg);
}

echo
tags("blaat[b]boe[/b]bb")."\n";
echo
tags("bla[i]asdasd[/i]")."\n";
?>
ikke_ookmaandag 11 april 2005 @ 23:14
Je hele functie opbouw is niet goed.
Dat met die global is helemaal niet nodig en al helemaaal niet netjes.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?

$message = "blaat[b]boe[/b]bb";
$blaat = "bladiebla tekststring met [b]vet[/b] gedrukte tekst";

function tags($text)
{
   $search  = array ('[b]', '[/b]', '[i]', '[/i]', '[u]', '[/u]',
 '[ul]', '[/ul]', '[li]', '[/li]');
   $replace = array ('<b>', '</b>', '<i>', '</i>', '<u>', '</u>', 
'<ul>', '</ul>', '<li>', '</li>');
   $text = str_replace($search, $replace, $text);
   return $text;
}

$message = tags($message);
//of
$blaat = tags($blaat);

?>
sabanmaandag 11 april 2005 @ 23:15
ikke_ook thanks.

Ik werk nooit met functies, vandaar dat ik er niks van bak.
SuperRembomaandag 11 april 2005 @ 23:16
PHP.net over functies
ikke_ookmaandag 11 april 2005 @ 23:17
Moet je wel proberen saban, is namelijk heel handig. Vaak moet je meerdere keren dezelfde dingen doen, bijvoorbeeld zoals je hier doet. En dan zijn functies enorm handig
the_disheavermaandag 11 april 2005 @ 23:18
JA, door de functie op te roepen met:

tags($bla) of tags($foo) of whatever.

Die global $text hoeft (geloof ik) niet. Wel een print $text toevoegen aan de function.
sabanmaandag 11 april 2005 @ 23:18
quote:
Op maandag 11 april 2005 23:17 schreef ikke_ook het volgende:
Moet je wel proberen saban, is namelijk heel handig. Vaak moet je meerdere keren dezelfde dingen doen, bijvoorbeeld zoals je hier doet. En dan zijn functies enorm handig
Proberen, dat is wat ik ook gedaan hebt maar kwam er niet uit.
Dankzij jou/jullie, nu wel
ikke_ookmaandag 11 april 2005 @ 23:19
Eindelijk heb ik hier iemand eerder kunnen helpen dan SuperRembo
ikke_ookmaandag 11 april 2005 @ 23:19
prima, daar is dit topic voor he

-edit-

Einde slowchat
SuperRembomaandag 11 april 2005 @ 23:20
quote:
Op maandag 11 april 2005 23:19 schreef ikke_ook het volgende:
Eindelijk heb ik hier iemand eerder kunnen helpen dan SuperRembo
Ik moest me ff inhouden
the_disheaverdinsdag 12 april 2005 @ 13:25
Hoe kun je anders dan met GET (via url) een variable doorsturen wanneer je gebruik maakt van
header("location: ");
the_disheaverdinsdag 12 april 2005 @ 13:40
Werkt setcookie();?

Dus:
1
2
setcookie("TestCookie", $value);
header("location: pagina.php";

En in pagina.php via $_cookie[TestCookie]; hem opvragen?
MouseInteractivedinsdag 12 april 2005 @ 13:51
quote:
Op dinsdag 12 april 2005 13:25 schreef the_disheaver het volgende:
Hoe kun je anders dan met GET (via url) een variable doorsturen wanneer je gebruik maakt van
header("location: ");
Je zou een variabele door kunnen sturen d.m.v. van een formuliertje met de POST methode.

In een cookie zetten zou ik niet doen, dat is alleen maar onhandig. Zet het dan gewoon in een sessie.
Dus:

1
2
$variabele = "bla";
$_SESSION['variabele'] = $variabele;

Vergeet dan niet om in de pagina session_start(); bovenaan te zetten.
the_disheaverdinsdag 12 april 2005 @ 13:57
Tof! hij doet het

cookie werkt ook, maar aangepast naar session!
MouseInteractivedinsdag 12 april 2005 @ 13:58
quote:
Op dinsdag 12 april 2005 13:57 schreef the_disheaver het volgende:
Tof! hij doet het
quote:
cookie werkt ook, maar aangepast naar session!
Ja cookie werkt ook, maar dat is onhandig, omdat je dan voor een variabele een bestandje gaat aanmaken op de computer van de gebruiker. Is nergens voor nodig dus.
Da_Koendinsdag 12 april 2005 @ 14:33
Ik heb steeds output per begin letter. Dus alles wat met een a begint, alles met een b etc. Dit met de volgende sqlstring:
1
2
3
<?php
$SqlString
= "SELECT * FROM items WHERE name LIKE '$a%' AND category = 'ringtones';";
?>


Dit werk allemaal prima, maar nu zijn er ook items die beginnen met een numeriek teken. Bestaat er nou iets dat alles wat begint met een numeriek teken selecteerd? Of weet iemand een andere manier hoe ik dit aan kan pakken?

[ Bericht 32% gewijzigd door Da_Koen op 12-04-2005 14:41:07 ]
raarmaarwaardinsdag 12 april 2005 @ 16:19
hey Cookies..

daar had ik net een vraagje over..

Als ik een cookie zet om een stylesheet te kiezen:

1
2
3
<?php 
setcookie("css", $_style , time()+3600000);
?>


hoe kan ik dan dat kreng uitlezen om die stylesheet gelijk toe te passen bij een volgend bezoek ?

zelf zat ik (n00b als ik ben) te klooien met
1
2
3
<?
if (isset($_COOKIE["css"]))
 


als ... dan.. en dat dan heb ik dus niet

en als dat cookie (met die $_style) er dus niet is moet hij eigenlijk het koekje resetten (althans het klokje) en anders kijken of de stylesheet wellicht gekozen is in de URL..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
elseif ($_GET['style'] == "1") 

{$_style="style1.css";}

elseif ($_GET['style'] == "2") 

{$_style="style2.css";}

elseif ($_GET['style'] == "3") 

{$_style="style3.css";}

elseif ($_GET['style'] == "4") 

{$_style="style4.css";}

elseif ($_GET['style'] == "5") 

{$_style="style5.css";}

else 

{$_style="style.css";}
?>


wie vult het ontbrekende stukje in
SuperRembodinsdag 12 april 2005 @ 17:11
quote:
Op dinsdag 12 april 2005 14:33 schreef Da_Koen het volgende:
Ik heb steeds output per begin letter. Dus alles wat met een a begint, alles met een b etc. Dit met de volgende sqlstring:
[ code verwijderd ]



Dit werk allemaal prima, maar nu zijn er ook items die beginnen met een numeriek teken. Bestaat er nou iets dat alles wat begint met een numeriek teken selecteerd? Of weet iemand een andere manier hoe ik dit aan kan pakken?
http://dev.mysql.com/doc/mysql/en/regexp.html

1
2
3
SELECT * 
FROM items
WHERE name REGEXP '^[0-9]'


(niet getest)
DutchBlooddinsdag 12 april 2005 @ 18:20
quote:
Op dinsdag 12 april 2005 16:19 schreef raarmaarwaar het volgende:
hey Cookies..

daar had ik net een vraagje over..

Als ik een cookie zet om een stylesheet te kiezen:
[ code verwijderd ]

hoe kan ik dan dat kreng uitlezen om die stylesheet gelijk toe te passen bij een volgend bezoek ?

zelf zat ik (n00b als ik ben) te klooien met
[ code verwijderd ]

als ... dan.. en dat dan heb ik dus niet

en als dat cookie (met die $_style) er dus niet is moet hij eigenlijk het koekje resetten (althans het klokje) en anders kijken of de stylesheet wellicht gekozen is in de URL..
[ code verwijderd ]

wie vult het ontbrekende stukje in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
php
if(!isset($_COOKIE['css'])) {
// cookie niet aanwezig
if(!isset($_GET['css']) or empty($_GET['css'])) {
//$_GET ook niet aanwezig
setcookie('''') //default cookie setten
}
else {
//$_GET waarde wel aanwezig
setcookie('') //cookie met $_GET waardes zetten
}//end else
}//end if
else {
// cookie was aanwezig, doe niks
}
?>


Lijkt me denk ik het simpelste.
MouseInteractivedinsdag 12 april 2005 @ 18:24
quote:
Op dinsdag 12 april 2005 16:19 schreef raarmaarwaar het volgende:
hey Cookies..

daar had ik net een vraagje over..

Als ik een cookie zet om een stylesheet te kiezen:
[ code verwijderd ]

hoe kan ik dan dat kreng uitlezen om die stylesheet gelijk toe te passen bij een volgend bezoek ?

zelf zat ik (n00b als ik ben) te klooien met
[ code verwijderd ]

als ... dan.. en dat dan heb ik dus niet

en als dat cookie (met die $_style) er dus niet is moet hij eigenlijk het koekje resetten (althans het klokje) en anders kijken of de stylesheet wellicht gekozen is in de URL..
[ code verwijderd ]

wie vult het ontbrekende stukje in
1
2
3
4
5
6
7
8
9
<?php
if (isset($_COOKIE['css'])) {
$_style = $_COOKIE['css'];

} else {
$stylenr = $_GET['style'];
$_style = "style".$stylenr.".css";
}
?>

Zoiets
sabandinsdag 12 april 2005 @ 20:35
Ik heb een script gemaakt om smiley codes om te toveren naar de juiste link van de smileys.

Dit is mijn script:
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
<?
function smileys($text)
{

$search = "array (";
$replace = "array (";

$SQL = "SELECT smcode FROM smileys";
$query = mysql_query($SQL);

while ( $result = mysql_fetch_array ( $query ) ) {

$smcode = $result['smcode'];
$search .= "'" . $smcode . "', ";

}

$SQL = "SELECT smlink FROM smileys";
$query = mysql_query($SQL);

while ( $result = mysql_fetch_array ( $query ) ) {

$smlink = $result['smlink'];
$replace .= "'" . $smlink . "', ";

}

$search =  substr($search, 0, -2);
$search .= ")";

$replace = substr($replace, 0, -2);
$replace .= ")";

$text = str_replace($search, $replace, $text);

return $text;

}

$foo = "dit is een test :) fok";
smileys($foo)

echo $foo;
?>


Maar ik krijg gewoon dit op mijn beeld, de smiley wordt niet vervangen.
1dit is een test :) fok


Ik vermoedt dat mijn fout in de arrays zit maar ben er niet zeker van, anyone ?

/edit
En
1echo $search; 

Levert dit op
1array (':D', ':@', ':W', ':W', ':9') 
Knutdinsdag 12 april 2005 @ 20:38
$foo=smileys($foo);
SuperRembodinsdag 12 april 2005 @ 20:42
Hier zitten wel heel veel rare dingen in.
Waarom zou je smileys in je database zetten?
Waarom zou je de hele code van een smiley plaatje in je database zetten?
2 query's om de codes en de plaatjes op te vragen? Je wil juist de code en 't plaatje bij elkaar houden.
De resultaten zet je in een string "array(':-)',':-(')"
devzerodinsdag 12 april 2005 @ 20:56
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
php
function smileys($text) {

        
$SQL = "SELECT smcode,smlink FROM smileys";
        
$query = mysql_query($SQL);

        
$search = Array();
        
$replace = Array();
        while (
$result = mysql_fetch_array($query) ) {
                
$search[] = $result['smcode'];
                
$replace[] = $result['smlink'];
        }
        return
str_replace($search, $replace, $text);
}

echo
smileys("dit is een test :) fok");
?>


zoiets?

[ Bericht 2% gewijzigd door devzero op 12-04-2005 21:06:06 (query foutje (dank je jump)) ]
sylvesterrrdinsdag 12 april 2005 @ 21:14
Dus je wil iedere keer dat je de functie smileys() een MySQL-query uitvoeren? Lijkt mij niet echt efficient.
sabandinsdag 12 april 2005 @ 21:23
quote:
Op dinsdag 12 april 2005 21:14 schreef sylvesterrr het volgende:
Dus je wil iedere keer dat je de functie smileys() een MySQL-query uitvoeren? Lijkt mij niet echt efficient.
Ach wat maakt zo een query uit ?
Ik heb geen tientallen hits per seconde, hooguit paar per minuut.

Of ik moet het zonder database doen, maar dan moet ik steeds mijn .php bestand wijzigen.

@devzero, thanks het werkt.
devzerowoensdag 13 april 2005 @ 02:26
quote:
Op dinsdag 12 april 2005 21:23 schreef saban het volgende:
Ach wat maakt zo een query uit ?
Ik heb geen tientallen hits per seconde, hooguit paar per minuut.
Ach, als het sneller kan, waarom dan niet? Wie weet wat je verder nog wil doen op een pagina.
quote:
Of ik moet het zonder database doen, maar dan moet ik steeds mijn .php bestand wijzigen.
Je zult het toch ergens moeten bijhouden, en hoevaak voeg je nieuwe smileys toe Als je strtr gebruikt dan kun je het bijvoorbeeld zo doen:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$smileys = Array(
        ":)" => "<img src=\"http://saban.info/smile.gif\">",
        ":{" => "<img src=\"http://saban.info/nosmile.gif\">",
        ":P" => "<img src=\"http://saban.info/tong.gif\">"
);

function doSmileys($text) {
        global $smileys;

        return strtr($text, $smileys);
}

echo doSmileys("hoi saban :). Je komt er nog wel :P");
?>
achterop23woensdag 13 april 2005 @ 11:51
Vraagje over data van mysql naar excel.
Alles lukt me, alleen 1 dingetje niet.
jaartallen moeten weergegeven worden als zijnde 99 of 04 (1999 of 2004).
04 wordt door excel gekilled naar 4
99 is wel goed
daarnaast kan het voorkomen dat de jaartallen 88-05 oid zijn (1988-2005) die worden gezien door excel als tekst.

maar alles moet als tekst gezien worden
door in een cel = 45&"" te typen zal de 45 als tekst gezien worden.
hoe zorg ik ervoor dat ik in php aangeef dat een bepaalde string als functie gezien moet worden, want hij plakt nml gewoon de string (= 45&"") in de cel en vooert hem niet uit, pas wanneer je in de cel gaat staan en op enter drukt ofzo.

De complete code waar het omgaat, check de comments die aangeven waar het stukje staat waar het om gaat:
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 

function stringsplit($the_string, $the_number) 

   $startoff_nr = 0; 
   $the_output_array = array(); 
   for($z = 1; $z < ceil(strlen($the_string)/$the_number)+1 ; $z++) 
   {     
       $startoff_nr = ($the_number*$z)-$the_number; 
       $the_output_array[] = substr($the_string, $startoff_nr, $the_number); 
   } 
   return($the_output_array); 


$query = "SELECT MAX(registeraantal) AS registeraantal FROM register" or die(mysql_error()); 
$resultaat = mysql_query($query) or die(mysql_error()); 
$rij= mysql_fetch_assoc($resultaat); 
$count="".$rij['registeraantal'].""; 
$aantal=$count; 

//knipknip
$counter=1; 
while ($counter<=$count) { 
//data goed zetten 
$j = "registerj".$counter; 
$jj = "registerjj".$counter; 
$plaats = "registerp".$counter; 
$club = "registerc".$counter; 
$order = "registerjj".$counter; 

//knipknip
$export = mysql_query($select); 
//$fields = mysql_num_fields($export); 
$counting=$counter+1; 

while($row = mysql_fetch_row($export)) { 
    $line = ''; 
    $str1 = $row[0]; 
    $str2 = $row[1]; 
    $jaar1 = stringsplit($str1, 2); 
    $jaar2 = stringsplit($str2, 2);
//
//@@@@zoals de code eerst was
//
   if ($jaar1[1] == $jaar2[1]) { 
       $date = "'".$jaar2[1].""; 
   } else { 
       $date = "'".$jaar1[1]."-".$jaar2[1].""; 
   } 
//
//@@@@zoals de codezou moeten zijn (maar door excel verkeerd wordt 'gelezen')
//
   if ($jaar1[1] == $jaar2[1]) { 
       $date = "=".$jaar2[1].""; 
   } else { 
       $date= "=".$jaar1[1]."&-&".$jaar2[1]."";
   } 
    $name = "".$row[3]." ".$row[4].""; 
    $a = array($date,$row[2],$name,$row[5],$row[6]); 
    foreach($a as $value) { 
        if ((!isset($value)) OR ($value == "")) { 
            $value = "\n"; 
        } else { 
            $value = str_replace('"', '""', $value); 
            $value = '"' . $value . '"' . "\t"; 
        } 
        $line .= $value; 
    } 
$nummer++;                                            
    $data .= '"'.$nummer.'"'."\t".trim($line)."\n"; 

$nummer=0; 
$data  = str_replace("\r","",$data); 
if ($data == "") { 
    $data= "\n(0) Records Found!\n";                          


$data = "".$data."\n\n".$done[$counting]."\n\n"; 
$counter++; 


//for ($i = 0; $i < $fields; $i++) { 
//    $header .= mysql_field_name($export, $i) . "\t"; 
//} 
$text=$done[1]; 
header("Content-type: application/x-msdownload"); 
header("Content-Disposition: attachment; filename=".date("d-m-Y")."_register.xls"); 
//filename=extraction.txt"); 
header("Pragma: no-cache"); 
header("Expires: 0"); 
print "$text\n\n$data"; 
?> 


de xls is hier te zien:

http://achterop23.downfire.com/finished/register/extract2txt/

[ Bericht 6% gewijzigd door achterop23 op 13-04-2005 13:55:51 ]
SuperRembowoensdag 13 april 2005 @ 12:55
Je maakt geen Excel bestand, maar een CSV bestand. Comma Separated Values, of in dit geval eigenlijk tab gescheiden. Je moet dan ook niet verwachten dat je Excel functies kan gebruiken.
Waarom maak je niet gewoon 2 kolommen met 4-cijferige jaartallen?
achterop23woensdag 13 april 2005 @ 13:58
omdat het juist de bedoeling is om het eruit te krijgen in 1 kolom als zijne 99-04 of 05 oid.

als laatste redmiddel kan ik altjid nog '99-'05 en '05 doen, dit werkt wel. Maar toch liever zonder die '.

niemand een oplossing?
op een engels forum had iemand een antwoord met concatenate, maar dat snap ik niet.

[ Bericht 1% gewijzigd door achterop23 op 13-04-2005 14:09:51 ]
SuperRembowoensdag 13 april 2005 @ 18:04
Het staat goed in de CSV file. Het wordt eigenlijk verkeerd geinterpreteerd door Excel
achterop23woensdag 13 april 2005 @ 19:03
quote:
Op woensdag 13 april 2005 18:04 schreef SuperRembo het volgende:
Het staat goed in de CSV file. Het wordt eigenlijk verkeerd geinterpreteerd door Excel
blame excel...
ik kan het wel laten wegschrijven als txt (csv) en dan importeren in excel en dan de betreffende kolom als zijnde text te laten zien. Dan is er niets aan de hand.
ikke_ookwoensdag 13 april 2005 @ 22:18
Ik krijg net een mailtje van een gebruiker van mijn site, en die zegt dat ze opeens was uitgelogd.
Ik heb mijn inloggen geregeld met een cookie en een sessie.
mn session.cookie_lifetime staat op 0 (dus hij is pas weg als je je browser afsluit toch?)
maar die persoon was dus uitgelogd zonder dat ze haar browser had afgesloten. Dit kan toch eigenlijk niet dan?
the_disheaverdonderdag 14 april 2005 @ 01:06
quote:
Op woensdag 13 april 2005 22:18 schreef ikke_ook het volgende:
Ik krijg net een mailtje van een gebruiker van mijn site, en die zegt dat ze opeens was uitgelogd.
Ik heb mijn inloggen geregeld met een cookie en een sessie.
mn session.cookie_lifetime staat op 0 (dus hij is pas weg als je je browser afsluit toch?)
maar die persoon was dus uitgelogd zonder dat ze haar browser had afgesloten. Dit kan toch eigenlijk niet dan?
Niet op een uitlog-link gedrukt?

Ik zou eerst ff wachten tot dat het vaker voor komt...
ralfiedonderdag 14 april 2005 @ 09:31
ik had eigenlijk twee vraagjes:
de eerste: hoe kan ik het snelste een bepaalde regel uit een bestand editen? bijvoorbeeld ik wil alleen regel 5 editen, de enige manier die ik heb gevonden is
1
2
3
4
5
6
$filearray = file['file.txt'];
$filearray[5] = "new line";
$filewrite = fopen("file.txt","w");
foreach ($filearray as $line)
      fwrite($filewrite, $line);
fclose($filewrite);
maar deze methode is erg omslachtig aangezien ie het hele bestand moet lezen en schrijven. dit moet toch sneller kunnen?

vraag 2: stel ik heb een textarea, en daarin wil ik een heel bestand laten zien om te editen en op te slaan. zoals hieronder:
1
2
3
4
5
6
7
8
9
<form action="my.php" method="POST"><textarea name="file">
<?php
$oldfile = file[myfile.txt];
foreach ($oldfile as $line)
             echo "$line";
?>
</textarea>
<input type="submit" value="submit">
</form>
het lukt me goed om elke regel apart te laten printen, maar het terugzetten gaat natuurlijk voor geen meter, aangezien de EOL tekens niet meegaan. Alles wat ik POST opvang zou dan op een regel geprint worden en dat moet niet. Ik heb dit opgelost door aan het eind van elke regel [eol] te printen en met explode("[eol]", $string) er weer een array van te maken die ik kan wegschrijven, maar dit ziet er niet erg mooi uit. weet iemand een beter alternatief?
zo heb ik het nu dus:
1
2
3
4
5
6
7
8
9
<form action="my.php" method="POST"><textarea name="file">
<?php
$oldfile = file['myfile.txt'];
foreach ($oldfile as $line)
             echo "$line [eol]";
?>
</textarea>
<input type="submit" value="submit">
</form>

en voor het POST gedeelte:
1
2
3
4
5
6
7
8
if (isset($_POST['file'])
{
           $newfile = explode("[eol]", $_POST['file']);
           $filewrite = fopen('myfile.txt',"w");
           foreach ($filearray as $line)
          fwrite($filewrite, $line);
            fclose($filewrite);
}

het wordt mss een vrij groot bestand (je moet wat als je geen mysql heb) dus moet het eigenlijk wel zo snel mogelijk uitgevoerd kunnen worden. Iemand een idee?
SuperRembodonderdag 14 april 2005 @ 12:45
quote:
Op donderdag 14 april 2005 09:31 schreef ralfie het volgende:
je moet wat als je geen mysql heb
Als dat het probleem is, misschien is SQLite dan iets voor je.
ikke_ookdonderdag 14 april 2005 @ 16:42
Ik wil graag alle waardes uit alle cellen uit 1 kolom bij elkaar optellen zodat ik het totaal van alle cellen samen heb. Kan dit met mysql of moet ik dan gewoon een query maken om al die waardes op te halen en dan in een while loopje allemaal optellen?

En ik wil eigenlijk ook graag weten wat het meest voorkomende getal is in een bepaalde kolom, hoe kan ik dat handig doen?

[ Bericht 11% gewijzigd door ikke_ook op 14-04-2005 17:05:54 ]
DutchBlooddonderdag 14 april 2005 @ 18:00
quote:
Op donderdag 14 april 2005 16:42 schreef ikke_ook het volgende:
Ik wil graag alle waardes uit alle cellen uit 1 kolom bij elkaar optellen zodat ik het totaal van alle cellen samen heb. Kan dit met mysql of moet ik dan gewoon een query maken om al die waardes op te halen en dan in een while loopje allemaal optellen?

En ik wil eigenlijk ook graag weten wat het meest voorkomende getal is in een bepaalde kolom, hoe kan ik dat handig doen?
Dat kan met de wiskundige functies van MySQL.
Kijk eens hier:
http://dev.mysql.com/doc/mysql/en/mathematical-functions.html
SuperRembodonderdag 14 april 2005 @ 18:36
quote:
Op donderdag 14 april 2005 18:00 schreef DutchBlood het volgende:

[..]

Dat kan met de wiskundige functies van MySQL.
Kijk eens hier:
http://dev.mysql.com/doc/mysql/en/mathematical-functions.html
De waarden van een colom optellen doe je met SUM(). Dat is een van de vele aggregate functions.
ikke_ookdonderdag 14 april 2005 @ 22:44
Dankjullie wel heren
Had ik zelf ook nog wel kunnen bedenken natuurlijk
ikke_ookdonderdag 14 april 2005 @ 22:46
Ik vind dat random icoon van jou maar niks SuperRembo Nu kan ik je niet meer makkelijk herkennen
ikke_ookdonderdag 14 april 2005 @ 23:02
Nieuw vraagje
Ik ben bezig met een statistieken pagina.(voor mn vogelaars pagina)
Ik heb een tabel met alle waarnemingen waarin wordt gewerkt met birdID's en een tabel met vogelnamen waarin deze birdID's terug komen.
Nu wil ik een tabel maken waarin staat hoeveel keer iedere vogel voorkomt.
Daarvoor heb ik de volgende query bedacht:
1
2
SELECT birds.nlname FROM birds RIGHT JOIN determinations ON 
birds.bid = determinations.bid

Waarmee ik alle waarnemingen terugkrijg die ik daarna (op een nog onbekende manier ) op ga tellen en in een array op wil slaan om vervolgens te printen.
Alleen ik heb het gevoel dat dit niet bijster efficient is.
Kan dat efficienter en zo ja, hoe?
ikke_ookdonderdag 14 april 2005 @ 23:17
hmm, het volgende werkt best goed en snel eigenlijk
1
2
3
4
5
6
7
8
9
10
   $query5 = "SELECT birds.nlname FROM birds RIGHT JOIN determinations 
ON birds.bid = determinations.bid";
   $result5 = mysql_query($query5);
   while($row = mysql_fetch_assoc($result5)){
      $array[$row['nlname']]++;
   }
   asort($array);
   foreach($array as $field => $value){
      $Str = "<tr><td>".$field."</td><td width=10>".$value."</td></tr>".$Str;
   }
SuperRembodonderdag 14 april 2005 @ 23:20
GROUP BY
Da_Koendonderdag 14 april 2005 @ 23:28
count en group by gebruiken
ikke_ookdonderdag 14 april 2005 @ 23:34
Dat scheelt toch 35% in tijd dank
(Bij 1500 rijen)

[ Bericht 9% gewijzigd door ikke_ook op 15-04-2005 00:01:01 ]
sabanzaterdag 16 april 2005 @ 23:36
Heeft er iemand een leuk [`quote][/quote] preg_replace ?

Dus dat er wanneer [`quote]tekst[/quote] wordt gezien, dat dat wordt replaced met;

1
2
3
4
5
6
7
8
9
10
<table border="0" cellpadding="0" cellspacing="0" width="400">
      <tr>
        <td width="50"> </td>
        <td width="350">quote:</td>
      </tr>
      <tr>
        <td width="50"> </td>
        <td width="350" bgcolor="#E7E7E7">tekst</td>
      </tr>
    </table>


Je moet die ` even wegdenken in [quote]
Libriszondag 17 april 2005 @ 15:14
quote:
Op zondag 17 april 2005 15:07 schreef Masegate het volgende:
Hoi,
ik ben met een site in php bezig en ik heb een formulier. Zodra je deze verzend worden de gegevens in de database gegooid en als dat allemaal goed is gegaan krijg je een berichtje. (Het bericht is geplaatst, klik hier om terug te gaan.)

Nu zou ik alleen willen dat je ook automatisch na 2 of 3 seconden wordt teruggestuurd. Je ziet dit ook altijd op die fora zoals phpBB. Ik kon uit de broncode echter niet achterhalen hoe het nou moet. Google leverde ook vrij weinig op.
Kan iemand mij uitleggen hoe ik dit aanpak?

Alvast bedankt!
Groeten, Dennis
header ("refresh: 2; URL = index.php");
Swetseneggerzondag 17 april 2005 @ 15:24
quote:
Op zaterdag 16 april 2005 23:36 schreef saban het volgende:
Heeft er iemand een leuk [`quote]['/quote] preg_replace ?

Dus dat er wanneer [`quote]tekst['/quote] wordt gezien, dat dat wordt replaced met;
[ code verwijderd ]

Je moet die ` even wegdenken in [quote]
kijk even in php voor dummies 1 of 2. Daar staat een oplossing in
Masegatezondag 17 april 2005 @ 15:38
quote:
Op zondag 17 april 2005 15:14 schreef Libris het volgende:

[..]

header ("refresh: 2; URL = index.php");
Het werkt, heel erg bedankt!
timbastiaansenzondag 17 april 2005 @ 17:09
Ik heb zelf een klein php scriptje geschreven om plaatjes te laden van de teletekst.nos.nl hiervoor gebruik ik hetvolgende:

zoeken.html

<form action="zoek1.php" method="post">
Teletekst nummer (666)<input type="text" name="pag"><br>
Pagina nummer (01)<input type="text" name="pag2"><br>
<input type="submit" name="versturen">
</form>

en zoek1.php

<?php

$een=$_POST["pag"];
$twee=$_POST["pag2"];
echo "<img src=\"http://teletekst.nos.nl/gif/images/$een-$twee.gif\">";

?>

alleen als hij het plaatje dus zou moeten laten zien geeft hij alleen zo'n teken dat het plaatje niet bestaat, maar het plaatje bestaat wel de url klopt gewoon. Hoe kan dit
SuperRembozondag 17 april 2005 @ 17:31
Ze controleren bij teletekst of het plaatje wel getoond wordt via een pagina op hun eigen server. Beveiliging dus
timbastiaansenzondag 17 april 2005 @ 17:33
Ik weet niet, maar als ik een html maak met: <img src="http://teletekst.nos.nl/gif/images/600-01.gif"> dan geeft hij het plaatje gewoon weer. Dat scriptje zet dezelfde code weg maar dan geeft hij het niet weer
Chandlerzondag 17 april 2005 @ 19:03
ik heb nu het volgende waarbij ik de 'leeftijd' te pakken krijg.

Echter krijg ik nog niet het aantal personen die die leeftijd heeft (dus per leeftijd een nummer van het aantal mensen met deze leeftijd)

1
2
3
4
5
6
SELECT DISTINCT (
DATE_FORMAT( FROM_DAYS( TO_DAYS( NOW( ) ) - TO_DAYS( klanten.gebdatum ) ) , '%Y' ) 
) AS leeftijd
FROM klanten
HAVING leeftijd !=0
ORDER BY leeftijd
Ninjinzondag 17 april 2005 @ 19:42
quote:
Op zondag 17 april 2005 17:33 schreef timbastiaansen het volgende:
Ik weet niet, maar als ik een html maak met: <img src="http://teletekst.nos.nl/gif/images/600-01.gif"> dan geeft hij het plaatje gewoon weer. Dat scriptje zet dezelfde code weg maar dan geeft hij het niet weer
Op mijn server werkt bovenstaande perfect.
Swetseneggerzondag 17 april 2005 @ 22:39
OO

Oe! de enge o's.
Ik hoor veel over object georienteerd programeren. Het zou je zo veel tijd en code besparen en 'libraries' aan 'usefull' code opleveren welke je in elk nieuw project weer kan gebruiken.... Nou DAT klinkt goed!

enthousiast heb ik diverse tuts over OO PHP doorgeworsteld, maar het blijft me maar ontgaan. Wanneer ik het mensen in 2 zinnen hoor uitleggen lijkt het nog het meest op de good old subroutine (gosub... kennen we hem nog?)... Maar daar heb je de functie al voor, dus het moet MEER zijn .

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren en het kwartje valt maar niet. Waar beter de vraag te stellen dan in het dummie topic. Is er iemand welke een en ander kan verduidelijken?
rekenwonderzondag 17 april 2005 @ 22:45
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
Is er iemand welke een en ander kan verduidelijken?
Nieuws: het is niets bijzonders, maar enkel een manier om code en data bij elkaar te houden en te genieten van dingen als overerving. Het grote voordeel is dus overzichtelijkheid voor de programmeur. Alle fuzz er omheen is marketing en dus voor ontwikkelaars niet ter zaken doende.
rekenwonderzondag 17 april 2005 @ 22:47
quote:
Op zondag 17 april 2005 19:03 schreef Chandler het volgende:
Echter krijg ik nog niet het aantal personen die die leeftijd heeft (dus per leeftijd een nummer van het aantal mensen met deze leeftijd)
[ code verwijderd ]
Je moet nog een GROUP BY-clause hanteren op de leeftijd.
Swetseneggerzondag 17 april 2005 @ 22:49
quote:
Op zondag 17 april 2005 22:45 schreef rekenwonder het volgende:

[..]

Nieuws: het is niets bijzonders, maar enkel een manier om code en data bij elkaar te houden en te genieten van dingen als overerving.
De marketing fuzz was me al duidelijk
Maar het KAN dus erg makkelijk zijn. Maar zolang je het niet snapt valt er weinig te genieten .
rekenwonderzondag 17 april 2005 @ 22:52
quote:
Op zondag 17 april 2005 22:49 schreef Swetsenegger het volgende:
Maar zolang je het niet snapt valt er weinig te genieten .
Ik zal maar niet vragen wat je niet snapt. Ik kan me van mezelf herinneren dat ik de overstap naar OO ook een zeer lastige vond en dat ik ook zeer moeilijk kon aangeven wat ik niet snapte. Het paradoxale was dat ook niemand mij kon uitleggen wat OO nou precies inhield. Maar ergens is het kwartje toch nog gevallen. En het heeft een beter mens van me gemaakt!

Wellicht dat collega MarkVleth er iets nuttigs over te melden heeft?

[ Bericht 0% gewijzigd door rekenwonder op 17-04-2005 23:07:49 ]
sabanzondag 17 april 2005 @ 22:56
quote:
Op zondag 17 april 2005 15:24 schreef Swetsenegger het volgende:

[..]

kijk even in php voor dummies 1 of 2. Daar staat een oplossing in
Woei dat wordt 700 berichten doorspitten.
Ik zal eens kijken
sabanzondag 17 april 2005 @ 23:03
Gevonden -> [PHP] voor dummies
maar dat is niet echt wat ik wil denk ik, moet het straks even uitproberen
Swetseneggerzondag 17 april 2005 @ 23:08
quote:
Op zondag 17 april 2005 22:52 schreef rekenwonder het volgende:

[..]

Ik zal maar niet vragen wat je niet snapt. Ik kan me van mezelf herinneren dat ik de overstap naar OO ook een zeer lastige vond en dat ik ook zeer moeilijk kon aangeven wat ik niet snapte. Het paradoxale was dat ook niemand het mij kon uitleggen wat OO nou precies inhield.
Daar loop ik dus ook tegenaan. Bij gebrek aan goede voorbeelden vermoed ik van een class en object. Zoals gezegd de phpfreakz tut door geworsteld, maar die gebruikt als voorbeeld een auto en daar heb ik niet veel mee .
quote:
Maar ergens is het kwartje toch nog gevallen. En het heeft een beter mens van me gemaakt!
Ik houdt derhalve moed!
quote:
Wellicht dat collega MarkVleth er iets nuttigs over te melden heeft?
Dat is een steek onder water
Swetseneggerzondag 17 april 2005 @ 23:10
quote:
Op zondag 17 april 2005 23:03 schreef saban het volgende:
Gevonden -> [PHP] voor dummies
maar dat is niet echt wat ik wil denk ik, moet het straks even uitproberen
wat die doet is ['quote] zoeken en ['/quote] en het geeft je de gelegenheid iets met de tekst ertussen te doen

Maar pak anders even ik denk het vorige deel erbij, zoek naar de briljante url parser van superRembo ['url] door ['quote] vervangen en het resultaat aanpassen
rekenwonderzondag 17 april 2005 @ 23:14
quote:
Op zondag 17 april 2005 23:08 schreef Swetsenegger het volgende:
Daar loop ik dus ook tegenaan. Bij gebrek aan goede voorbeelden vermoed ik van een class en object.
Laten we als voorbeeld dan een huis nemen :-) Een class is dan de bouwtekening. Met deze bouwtekening kun je dan vele huizen (lees: objecten) bouwen. Dit bouwen noem je instantiëren.
quote:
Dat is een steek onder water
Dat klopt! Maar ik neem de steek terug. Ik geloof daadwerkelijk dat er mensen zijn die het beter kunnen uitleggen dan ik dat kan.
Swetseneggerzondag 17 april 2005 @ 23:28
quote:
Op zondag 17 april 2005 23:14 schreef rekenwonder het volgende:

[..]

Laten we als voorbeeld dan een huis nemen :-) Een class is dan de bouwtekening. Met deze bouwtekening kun je dan vele huizen (lees: objecten) bouwen. Dit bouwen noem je instantiëren.
Tot zover begrijp ik het
Klinkt nog steeds als een subroutine, maar het zij zo.
Nu....
Kan je een simpel voorbeeld van deze huizen class maken, hoe je 'm aanroept en hoe ik dan huizen kan bouwen, welke ook nog eens verschillende van elkaar zijn. Want dat kan toch? door de waarden welke ik mijn class 'in stuur' kan ik toch verschillende objecten bouwen. twee onder 1 kap, apparatement, rijtjeshuis zeg maar?.
quote:
Dat klopt! Maar ik neem de steek terug. Ik geloof daadwerkelijk dat er mensen zijn die het beter kunnen uitleggen dan ik dat kan.
Meestal laten verschillende (complete) visies het kwartje eerder vallen...

Of zal ik maar een [OO PHP] voor dummies openen omdat dit misschien een beetje te ver gaat voor dit topic?
mscholzondag 17 april 2005 @ 23:44
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
OO

Oe! de enge o's.
Ik hoor veel over object georienteerd programeren. Het zou je zo veel tijd en code besparen en 'libraries' aan 'usefull' code opleveren welke je in elk nieuw project weer kan gebruiken.... Nou DAT klinkt goed!

enthousiast heb ik diverse tuts over OO PHP doorgeworsteld, maar het blijft me maar ontgaan. Wanneer ik het mensen in 2 zinnen hoor uitleggen lijkt het nog het meest op de good old subroutine (gosub... kennen we hem nog?)... Maar daar heb je de functie al voor, dus het moet MEER zijn .

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren en het kwartje valt maar niet. Waar beter de vraag te stellen dan in het dummie topic. Is er iemand welke een en ander kan verduidelijken?


suc6 dan

bij mij is het kwartje ooit gevallen, maar uiteindelijk is ie weer gaan staan
quote:
Op zondag 17 april 2005 23:28 schreef Swetsenegger het volgende:

Of zal ik maar een [OO PHP] voor dummies openen omdat dit misschien een beetje te ver gaat voor dit topic?
maak er dan een OOP php topic van...
Swetseneggerzondag 17 april 2005 @ 23:53
quote:
Op zondag 17 april 2005 23:44 schreef mschol het volgende:

[..]



suc6 dan

bij mij is het kwartje ooit gevallen, maar uiteindelijk is ie weer gaan staan
Ik begrijp dat je het niet begrijpt
quote:
maak er dan een OOP php topic van...
Mjah, moet ik wel mensen hebben welke een tut willen schrijven.
capetonianmaandag 18 april 2005 @ 00:11
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
OO

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren ......
URL?
DionysuZmaandag 18 april 2005 @ 00:12
quote:
Op zondag 17 april 2005 22:39 schreef Swetsenegger het volgende:
OO

Oe! de enge o's.
Ik hoor veel over object georienteerd programeren. Het zou je zo veel tijd en code besparen en 'libraries' aan 'usefull' code opleveren welke je in elk nieuw project weer kan gebruiken.... Nou DAT klinkt goed!

enthousiast heb ik diverse tuts over OO PHP doorgeworsteld, maar het blijft me maar ontgaan. Wanneer ik het mensen in 2 zinnen hoor uitleggen lijkt het nog het meest op de good old subroutine (gosub... kennen we hem nog?)... Maar daar heb je de functie al voor, dus het moet MEER zijn .

op phpfreakz stond een 4 pagina's uitleg over classes en objects, met als voorbeeld een auto en kleuren en het kwartje valt maar niet. Waar beter de vraag te stellen dan in het dummie topic. Is er iemand welke een en ander kan verduidelijken?
bedoel je iets als
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class auto {
 function auto() {
  // initialisatie
  $this->kleur = "wit";
  $this->merk = "mercedes";
 }

 function set_kleur($kleur="wit") {
  $this->kleur = $kleur;
  return 0;
 }

 function set_merk($merk="mercedes") {
  $this->merk = $merk;
  return 0;
 }
}

eerder gebruikte ik altijd gewoon een boel functies etc. Maar sinds ik dit heb ontdekt vind ik het toch wel erg fijn Gewoon een nieuwe auto aanmaken met
1
2
3
4
5
$auto1 = new auto;
$auto2 = new auto;

$auto1->set_merk("Volkswagen");
$auto1->set_kleur("rood");

En dan heb je fijn alle handige troep in 1 object hangen, zoals bij OO altijd handig is. Wist eerder niet dat dat kon met php.

Ik zit nu met een ander probleem en misschien dat iemand me daarmee kan helpen? Ik heb zeg maar 3 tabellen:

1
2
3
einz_login [id,username,accesslevel,avatar,sig]
einz_topic [id,forum_id,titel,sticky,slot,announcement]
einz_reactie [id,plaatstijd,user_id,inhoud]

en nu wil ik op een of andere manier een topiclijst genereren met De topictitel, of hij sticky is of niet, de topicstarter (degene die de eerste reactie in de topic heeft), het aantal posts in het betreffende topic en de laatste post + poster. Nu heb ik daar nog minstens N+1 queries voor nodig voor N topics, en ik wil dat natuurlijk in 1 query. Dit is mijn functie:

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
<?php
    
function get_topics($fid,$pag=1,$aantal=50) {
      
$topic = Array();
      
$this-&gt;Db-&gt;query("SELECT t1.id, t1.titel, t1.sticky, t1.slot, t1.announcement,
                               COUNT(DISTINCT(t2.id)) as aantal, MAX(t2.id) as max, MIN(t2.id) as min,
                               MAX(t2.plaatstijd) as maxtijd,
                               t3.username as usermin
                        FROM einz_topic as t1, einz_login as t3, einz_login as t4 JOIN einz_reactie as t2
                        ON t2.topic_id = t1.id
                        WHERE t1.forum_id="
.$fid."
                        AND t3.id = t2.nick_id
                        GROUP BY t1.id
                        ORDER BY t1.announce, t1.sticky, maxtijd DESC LIMIT "
.(($pag-1)*$aantal).",".$aantal);
      
$val2 = Array();
      while (
$val = $this-&gt;Db-&gt;newRow()) {
        
$val2[] = $val;
      }
      foreach (
$val2 as $key=&gt;$val) {
        
$t1["id"] = $val["id"];
        
$t1["titel"] = $val["titel"];
        
$t1["aantal"] = $val["aantal"];
        
$t1["maxid"] = $val["max"];
        
$t1["minid"] = $val["min"];
        
$t1["slot"] = $val["slot"];
        
$t1["sticky"] = $val["sticky"];
        
$t1["announce"] = $val["announce"];
        
$t1["starter"] = $val["usermin"];

        
$this-&gt;Db-&gt;query("SELECT einz_login.username as user,einz_reactie.plaatstijd as lasttijd, UNIX_TIMESTAMP(einz_reactie.plaatstijd) as tijd FROM einz_login,einz_reactie WHERE einz_login.id = einz_reactie.user_id AND einz_reactie.id = ".$val["max"]." LIMIT 1");
        if (
$val3 = $this-&gt;Db-&gt;newRow()) {
          
$t1["lastpost"] = $val3["tijd"];
          
$t1["lasttijd"] = $val3["lasttijd"];
          
$t1["lastuser"] = $val3["user"];
        }
        
$topic[] = $t1;
      }
      return
$topic;
    }
?>

het werkt, maar toch vind ik het geen mooie oplossing. Ik heb liever iets snellers. Daarnaast staat mijn webpagina op een server waarop ik bijv niet (SELECT * FROM tabel WHERE id IN (SELECT id FROM tabel2)) kan doen, wat het allemaal nog wat gecompliceerder maakt. Maar goed, iemand een oplossing?
Swetseneggermaandag 18 april 2005 @ 00:13
quote:
Op maandag 18 april 2005 00:11 schreef capetonian het volgende:

[..]

URL?
www.phpfreakz.nl
zoeken in artikelen
OO



Maar hierbij
http://www.phpfreakz.nl/artikelen.php?aid=99
the_disheavermaandag 18 april 2005 @ 15:23
FF een vraagje, hoe veilig mijn inlog-systeem is. Het antwoord weet ik al: niet heel erg, dus de volgende vraag: hoe kan het beter)

Je logt in, en je naam_id, en wachtwoord wordt opgeslagen in een session-variable. Vervolgens wordt er een php-bestand geinclude, en in dat bestand staan variable, onderandere het wachtwoord. Wanneer de session-variable en het wachtwoord in het bestand gelijk zijn, wordt de rest van de pagina weergegeven, anders een niet-inlog fout.

Grootste lek is de bestand welke ge-include wordt. Want als je het bestand weet, en de variable-naam kun je met include() en print() het wachtwoord zomaar achterhalen.

Hoe kan het beter? Kun je bv in het .htaccess bestand enkel files van een bepaald domein toestaan om het bestand te include'n?
En kun je het wachtwoord coderen? Gevonden, met Crypt()


Dank!

[ Bericht 2% gewijzigd door the_disheaver op 18-04-2005 15:28:13 ]
DionysuZmaandag 18 april 2005 @ 16:57
ik gebruik zelf md5 om het wachtwoord te encrypten. Bij mij staan de inlog wachtwoorden in een database, dubbel md5 gecrypt en als je inlogt krijg je een cookie met je wachtwoord enkel md5 gecrypt. Als mensen je cookie immers achterhalen hebben ze anders ook meteen je wachtwoord. En in mijn geval de hash van het wachtwoord, daarom in de db dubbel. Kan het beter?

Overigens heb ik de wachtwoorden van de database etc. in een tekst bestand gezet en in een directory gepleurd die ik met een .htaccess file met de volgende inhoud heb beveiligd
quote:
<Limit GET POST PUT DELETE>
order deny,allow
deny from all
</Limit>
ik ben niet zo'n held op beveiligingsgebied dus als iemand me kan vertellen hoe het beter kan
DutchBloodmaandag 18 april 2005 @ 17:00
quote:
Op maandag 18 april 2005 15:23 schreef the_disheaver het volgende:
FF een vraagje, hoe veilig mijn inlog-systeem is. Het antwoord weet ik al: niet heel erg, dus de volgende vraag: hoe kan het beter)

Je logt in, en je naam_id, en wachtwoord wordt opgeslagen in een session-variable. Vervolgens wordt er een php-bestand geinclude, en in dat bestand staan variable, onderandere het wachtwoord. Wanneer de session-variable en het wachtwoord in het bestand gelijk zijn, wordt de rest van de pagina weergegeven, anders een niet-inlog fout.

Grootste lek is de bestand welke ge-include wordt. Want als je het bestand weet, en de variable-naam kun je met include() en print() het wachtwoord zomaar achterhalen.

Hoe kan het beter? Kun je bv in het .htaccess bestand enkel files van een bepaald domein toestaan om het bestand te include'n?
En kun je het wachtwoord coderen? Gevonden, met Crypt()


Dank!
Wachtwoorden kun je eventueel ook encrypten met md5(); dit is wat veiliger, omdat een md5-hash onomkeerbaar is, je kunt de passworden dus wel matchen, maar ze kunnen nooit meer teruggerekent worden.

En ik zie het probleem met het includen niet zo, als je je include bestand gewoon een .php extensie geeft krijgt degene die de filename weet in principe niks te zien, zolang je niks print in je include-bestand dus.
ikke_ookmaandag 18 april 2005 @ 18:29
Je moet geen wachtwoord in je cookie zetten, ook niet encrypt.

Uit een eerder topic gevist: interessant linkje over beveiliging/inloggen
SuperRembomaandag 18 april 2005 @ 18:31
quote:
Op maandag 18 april 2005 18:29 schreef ikke_ook het volgende:
Je moet geen wachtwoord in je cookie zetten, ook niet encrypt.

Uit een eerder topic gevist: interessant linkje over beveiliging/inloggen
Hey, die site was ik al een tijdje kwijt. Thx
ikke_ookmaandag 18 april 2005 @ 18:35
Sinds wanneer heb jij sites nodig??
DionysuZmaandag 18 april 2005 @ 18:54
tnx voor dat linkje. Handige shit
SuperRembomaandag 18 april 2005 @ 19:35
quote:
Op maandag 18 april 2005 18:35 schreef ikke_ook het volgende:
Sinds wanneer heb jij sites nodig??
Die link had ik Darkomen willen geven als antwoord op z'n vraag.
Schorpioenmaandag 18 april 2005 @ 19:37
quote:
Op maandag 18 april 2005 16:57 schreef DionysuZ het volgende:
ik gebruik zelf md5 om het wachtwoord te encrypten. Bij mij staan de inlog wachtwoorden in een database, dubbel md5 gecrypt en als je inlogt krijg je een cookie met je wachtwoord enkel md5 gecrypt. Als mensen je cookie immers achterhalen hebben ze anders ook meteen je wachtwoord. En in mijn geval de hash van het wachtwoord, daarom in de db dubbel. Kan het beter?
Nou dankzij die pagina weet je dus dat het veel beter kan!
quote:
Overigens heb ik de wachtwoorden van de database etc. in een tekst bestand gezet en in een directory gepleurd die ik met een .htaccess file met de volgende inhoud heb beveiligd
[..]

ik ben niet zo'n held op beveiligingsgebied dus als iemand me kan vertellen hoe het beter kan
Kritische info zoals wachtwoorden en inlognamen kun je beter helemaal buiten de www root houden, indien mogelijk. Een htaccess pw kan in theorie gehacked worden, bijv gesniffed als je geen ssl gebruikt, of gewoon met brute force geraden als je wachtwoord niet veilig genoeg is. De info ligt dan voor het oprapen. Als je een bestand buiten de www root plaatst dan kan de webserver ze niet eens bereiken en zijn ze ook onbereikbaar voor bezoekers. Jij kan de info dan wel bereiken via een ssh verbinding. En als je dan echt secure wil zijn dan maak je de verbinding met een private/public rsa key pair van ten minste 2048 bits grootte, met een 40 tekens lange passphrase.
DionysuZmaandag 18 april 2005 @ 19:57
probleem is dat ik niet buiten de www root bestanden kan plaatsen. Tis nie mijn server en die mogelijkheid wordt me niet geboden. Maar mijn .htaccess bestand bevat geen paswoord, slechts een "Deny all" zodat je er gewoon niet van buiten in kan. Maar misschien dat iemand weet hoe veilig een directory is als er een .htaccess file in staat met als inhoud:

1
2
3
4
<Limit GET POST PUT DELETE>
order deny,allow
deny from all
</Limit>
Schorpioenmaandag 18 april 2005 @ 20:04
Je kan ze ook de permissie 600 geven (als de server tenminste goed is geconfigureerd, anders kan je er zelf ook niet meer bij )
DionysuZmaandag 18 april 2005 @ 20:06
hm nu je het zegt, ik zal dat eens proberen
DionysuZmaandag 18 april 2005 @ 20:10
600 werkte niet, maar 700 wel.
Darkomenmaandag 18 april 2005 @ 20:46
quote:
Op maandag 18 april 2005 19:35 schreef SuperRembo het volgende:

[..]

Die link had ik Darkomen willen geven als antwoord op z'n vraag.
DIe heb ik nu ook, bedankt

en ik zie dat ik het veilig doe , md5, ip opslaan, online status veld, geen pw of username in cookie of sessie
the_disheavermaandag 18 april 2005 @ 20:49
Das handig, dat linkje Wel een beetje dom om niet gewoon aan dat 1 of 0 (wel of niet ingelogd) te denken. Hoef ik dat bestand ook niet elke keer te openen...
quote:
DutchBlood:
En ik zie het probleem met het includen niet zo, als je je include bestand gewoon een .php extensie geeft krijgt degene die de filename weet in principe niks te zien, zolang je niks print in je include-bestand dus.
in het includebestand wordt enkel waardes gegeven aan variables. Dus je krijgt idd niets te zien.

Maar mocht iemand weten welk bestand ik gebruik, in een eigen script dat bestand include, en ook nog weet welke variablenaam ik er aan heb gegeven (of kun je niet via het debuggen alle variable bekijken?) en dat vervolgens simpel weg print.

Maar wanneer ik md5() gebruik, maakt het ook niet veel uit of hij dat te zien komt...
Swetseneggermaandag 18 april 2005 @ 22:36
quote:
Op maandag 18 april 2005 18:29 schreef ikke_ook het volgende:

Uit een eerder topic gevist: interessant linkje over beveiliging/inloggen


Iemand al meer info over OOP?
Jumpmaandag 18 april 2005 @ 22:44
De OP voor dit topic kan nu gevonden worden op http://wiki.fok.nl/index.php/OP/PHP.

Aanpassen mag, zolang deze maar beter uitkomt dan de huidige

Ook handig: http://wiki.fok.nl/index.php/PHP
SuperRembomaandag 18 april 2005 @ 23:14
quote:
Op maandag 18 april 2005 22:36 schreef Swetsenegger het volgende:

[..]



Iemand al meer info over OOP?
http://www.phppatterns.com, met een lijst OOPhp tuts
Librisdinsdag 19 april 2005 @ 04:04
quote:
Op maandag 18 april 2005 22:36 schreef Swetsenegger het volgende:

[..]



Iemand al meer info over OOP?
en http://phpclasses.half2.nl/browse/
En site met een verzameling php classes.

Zelf gebruik ik voor mijn database een class, werkt wel fijn
sabandinsdag 19 april 2005 @ 10:03
quote:
Op maandag 18 april 2005 20:46 schreef Darkomen het volgende:

[..]

DIe heb ik nu ook, bedankt

en ik zie dat ik het veilig doe , md5, ip opslaan, online status veld, geen pw of username in cookie of sessie
Wat ik me afvraag, waarom geen usernames in sessies ? Staat ook niks over op die website (over veilig inlog systeem).
Swetseneggerdinsdag 19 april 2005 @ 10:20
quote:
Op dinsdag 19 april 2005 10:03 schreef saban het volgende:

[..]

Wat ik me afvraag, waarom geen usernames in sessies ? Staat ook niks over op die website (over veilig inlog systeem).
Om dezelfde reden als het password. Het is simpelweg te onderscheppen, en hoe meer info een potentiele hacker eenvoudig kan onderscheppen, des te eenvoudiger de hack wordt

-edit- overigens, voor 1 of ander boerelullen site-tje met een cmsje zal ik me niet zoveel zorgen maken als ik jou was
sabandinsdag 19 april 2005 @ 10:24
quote:
Op dinsdag 19 april 2005 10:20 schreef Swetsenegger het volgende:

[..]

Om dezelfde reden als het password. Het is simpelweg te onderscheppen, en hoe meer info een potentiele hacker eenvoudig kan onderscheppen, des te eenvoudiger de hack wordt

-edit- overigens, voor 1 of ander boerelullen site-tje met een cmsje zal ik me niet zoveel zorgen maken als ik jou was
Een loginnaam kan de hacker toch wel verkrijgen, via het forum bijvoorbeeld, daarom snap ik de nut er niet van.
Website/project waar ik aan werk is geen boerelul site maar een serieuze grote project en ja ik sla usernames op in sessies.
Swetseneggerdinsdag 19 april 2005 @ 10:26
quote:
Op dinsdag 19 april 2005 10:24 schreef saban het volgende:

[..]

Een loginnaam kan de hacker toch wel verkrijgen, via het forum bijvoorbeeld, daarom snap ik de nut er niet van.
Welk forum?

[quote]
Website/project waar ik aan werk is geen boerelul site maar een serieuze grote project en ja ik sla usernames op in sessies.
Waarom?
sabandinsdag 19 april 2005 @ 10:32
quote:
Op dinsdag 19 april 2005 10:26 schreef Swetsenegger het volgende:

[..]

Waarom?
De vraag is waarom niet.
Bijvoorbeeld als je wilt doen, Welkom $username, waarom niet ?
Ik bedoel, hoe wil je het anders doen, een user-id in de sessie stoppen en steeds een nieuwe query uitvoeren oid ?

/edit
Ik bedoel, zoiets als FOK! bijvoorbeeld, een hacker kan mijn login naam toch gewoon zien
markvlethdinsdag 19 april 2005 @ 10:39
quote:
Op maandag 18 april 2005 19:35 schreef SuperRembo het volgende:
Die link had ik Darkomen willen geven als antwoord op z'n vraag.
Ik heb die link even bekeken maar er staan een hoop merkwaardige dingen in.
Ten eerste het rare idee dat je geen username (user) in je sessie zou mogen opslaan. Dat is natuurlijk de reinste onzin, dat mag wel. Of je nu aan de hand van een variabele controleert of een gebruikers is aangemeld of een volledige user maakt het risico niet groter of kleiner. Oftewel username in sessie stoppen mag wel.

Verder wordt er voorgeteld een database te gebruiken voor het langdurig aangemeld houden van personen. Ook dit is not done, het creeert juist een beveiligings risico. Een database is hier tevens niet voor bedoeld.
markvlethdinsdag 19 april 2005 @ 11:07
quote:
Op zondag 17 april 2005 22:52 schreef rekenwonder het volgende:
Ik zal maar niet vragen wat je niet snapt. Ik kan me van mezelf herinneren dat ik de overstap naar OO ook een zeer lastige vond en dat ik ook zeer moeilijk kon aangeven wat ik niet snapte. Het paradoxale was dat ook niemand mij kon uitleggen wat OO nou precies inhield. Maar ergens is het kwartje toch nog gevallen. En het heeft een beter mens van me gemaakt!

Wellicht dat collega MarkVleth er iets nuttigs over te melden heeft?
Dat heb ik uiteraard, Object georienteerd programmeren is voornamelijk classificeren.
Net zoals in bijvoorbeeld het dierenrijk. We hebben de classificatie Warmbloedigen en een daarvan afgeleide classificatie zou bijvoorbeeld katachtigen kunnen zijn. Katachtigen is een uitbreiding op warmbloedigen. En dan zien we gelijk een voordeel. We hoeven de classificatie niet nogmaals te schrijven, we breiden deze enkel uit. Het is dus een vorm van gestructureerd programmeren, niets meer niets minder.
myzdinsdag 19 april 2005 @ 11:16
ik heb even een vraag je over reguliere expressie waar ik zelf echt even niet uit kom.

Ik heb de volgende code om de url tussen [img] en [/img] te halen.
1
2
3
<?php
preg_match_all
('/\[img\](.*?)\[\/img\]/si' , $tekst, $url);
?>


Maar nu wil ik ook dat hij ook de url vindt die tussen [limg] en [/limg] vindt en ook die tussen [limg] en [/limg] is er toevallig iemand die mij zou kunnen vertellen hoe ik dat voor elkaar krijg ik heb al ongeveer een dag zitten klooien met reguliere expressies en echt gaan snappen doe ik het niet...
sabandinsdag 19 april 2005 @ 11:51
quote:
Op dinsdag 19 april 2005 11:16 schreef myz het volgende:
ik heb even een vraag je over reguliere expressie waar ik zelf echt even niet uit kom.

Ik heb de volgende code om de url tussen [afbeelding] te halen.
[ code verwijderd ]

Maar nu wil ik ook dat hij ook de url vindt die tussen [afbeelding] vindt en ook die tussen [afbeelding] is er toevallig iemand die mij zou kunnen vertellen hoe ik dat voor elkaar krijg ik heb al ongeveer een dag zitten klooien met reguliere expressies en echt gaan snappen doe ik het niet...
Kijk hier even
myzdinsdag 19 april 2005 @ 12:12
quote:
Op dinsdag 19 april 2005 11:51 schreef saban het volgende:

[..]

Kijk hier even
Ik geloof dat ik niet helemaal duidelijk ben geweest wat ik wil.

Ik heb een script gemaakt dat als er in een nieuws bericht een plaatje tussen [img] en [/img] staat dat dan het plaatje word gedownload naar mijn eigen server. Wat ik dan doe met
1
2
3
<?php
preg_match_all
('/\[img\](.*?)\[\/img\]/si' , $tekst, $url);
?>
is de url's die tussen [img] en [/img] staan downloaden naar de eigen server. Als ik dat heb gedaan moet ik natuurlijk ook nog even de link die er eerst stond herschrijven zodat het plaatje van de eigen server word gebruikt.

Wat is nu het probleem: Met boven staande code word alleen alles tussen [img] en [/img] gevonden maar ik wil ook dat [limg], [/limg], [rimg] en [/rimg] gevonden worden zodat daar ook de plaatjes van worden gedownload en de urls worden herschreven.

Hoop dat ik nu wel duidelijk ben in wat ik wil bereiken
Juggernautdinsdag 19 april 2005 @ 12:38
maak een array van alle tags, loop door alle tags met een while of een foreach en duw de matches in een array. klaar

zie bijvoorbeeld http://nl3.php.net/manual/en/function.preg-match-all.php de reactie van rickyale at ig dot com dot br

[ Bericht 48% gewijzigd door Juggernaut op 19-04-2005 12:45:39 ]
Swetseneggerdinsdag 19 april 2005 @ 12:45
quote:
Op dinsdag 19 april 2005 11:07 schreef markvleth het volgende:

[..]

Dat heb ik uiteraard, Object georienteerd programmeren is voornamelijk classificeren.
Net zoals in bijvoorbeeld het dierenrijk. We hebben de classificatie Warmbloedigen en een daarvan afgeleide classificatie zou bijvoorbeeld katachtigen kunnen zijn. Katachtigen is een uitbreiding op warmbloedigen. En dan zien we gelijk een voordeel. We hoeven de classificatie niet nogmaals te schrijven, we breiden deze enkel uit. Het is dus een vorm van gestructureerd programmeren, niets meer niets minder.
Mooi verhaal, snap het ook nog maar ik ben feitelijk op zoek naar iets pragmatischer.
markvlethdinsdag 19 april 2005 @ 13:26
Daar lijken me genoeg voorbeelden van te vinden op het grote internet. Het belangrijkste is het classificeren onder de knie te krijgen. Dus welke methodes en attributen behoren nou toe aan een bepaalde klasse? Voor entiteiten is dit vrij simpel, dit is immers een weerspiegeling van de werkelijkheid en vaak de onderliggende database. Dus bijvoorbeeld een class User zal attributen hebben als name, age, etc. Verder heeft zo'n klasse methode nodig om de attributen te kunnen wijzigen danwel opvragen. dit zijn de zogenaamde getters en setters. Zulke entieiten/classes zul je dus voor elk database tabelletje hebben.

Lastiger wordt het classificeren als we bijvoorbeeld een UserManager class definieren. Dergelijke klasses zijn verantwoordelijk voor het selecteren/muteren/verwijderen van entiteiten in de persistentie laag (vaak een database). Dus zulke klasses hebben methodes als findByName($name), store($user), etc...

Zoals je ziet heeft dit alles met structuur te maken en het neerleggen van verantwoordelijkheden. Wil ik een andere persistentie laag gebruiken dan hoef ik nu enkel de betreffende Manager klasses te wijzigen. Alle lagen daarboven blijven hetzelfde. Het plaatje is natuurlijk veel groter maar als je dit correct weet te implementeren ben je al heel ver...
myzdinsdag 19 april 2005 @ 14:05
quote:
Op dinsdag 19 april 2005 12:38 schreef Juggernaut het volgende:
maak een array van alle tags, loop door alle tags met een while of een foreach en duw de matches in een array. klaar

zie bijvoorbeeld http://nl3.php.net/manual/en/function.preg-match-all.php de reactie van rickyale at ig dot com dot br
Dat doe ik al maar
1
2
3
<?php
preg_match_all
('/\[img\](.*?)\[\/img\]/si' , $tekst, $url);
?>


Vindt nu alleen [img] en [/img] Ik wil graag dat hij ook [rimg] en [limg] vind en daarvoor moet ik de regilier expression aanpassen en ik kom er niet uit hoe ik die moet aanpassen.....
Darkomendinsdag 19 april 2005 @ 14:21
quote:
Op dinsdag 19 april 2005 10:39 schreef markvleth het volgende:

[..]

Ik heb die link even bekeken maar er staan een hoop merkwaardige dingen in.
Ten eerste het rare idee dat je geen username (user) in je sessie zou mogen opslaan. Dat is natuurlijk de reinste onzin, dat mag wel. Of je nu aan de hand van een variabele controleert of een gebruikers is aangemeld of een volledige user maakt het risico niet groter of kleiner. Oftewel username in sessie stoppen mag wel.

Verder wordt er voorgeteld een database te gebruiken voor het langdurig aangemeld houden van personen. Ook dit is not done, het creeert juist een beveiligings risico. Een database is hier tevens niet voor bedoeld.
Wat ik doe is een deel van het ip adres met md5() encrypten en in de database en een sessie oplsaan.

Ik kontroleer dan beide, of de remote adress hetzelfde is als het opgeslagen ip in de database en in de sessie.
Juggernautdinsdag 19 april 2005 @ 14:24
je doet het niet. img is bij jou een vaste waarde. Je moet door de array met tags loopen en dan elke keer img vervangen door de tag. in jouw geval loopt ie dus 3x en doet ie ook 3x de preg_match_all. bestudeer m'n link nog maar eens goed.
1
2
3
4
5
6
7
<?php
$tags
= array("img", "rimg", "limg");
foreach(
$tags as $value){  //en shit
   //preg_match met de huidig tag $value
   //gevonden waarde toevoegen aan je array
}
?>
markvlethdinsdag 19 april 2005 @ 14:29
quote:
Op dinsdag 19 april 2005 14:21 schreef Darkomen het volgende:
Ik kontroleer dan beide, of de remote adress hetzelfde is als het opgeslagen ip in de database en in de sessie.
Kun je me dan uitleggen waarom je dergelijke gegevens persistent wilt maken? Is het echt noodzakelijk dat een sessie een eventuele server crash overleeft?

Is het niet handiger om beide gegevens gewoon in de sessie te houden?
Darkomendinsdag 19 april 2005 @ 15:13
Ik wilde er zeker van zijn dat degene die inlogt het juiste ip adres heeft, dus dat het niet mogenlijk is en de sessie te kapen en de het ip te 'spoofen' (zo heet dat volgens mij) is
markvlethdinsdag 19 april 2005 @ 15:15
Je kunt toch niet zomaar gegevens in je sessie wijzigen?
DionysuZdinsdag 19 april 2005 @ 15:25
quote:
Op dinsdag 19 april 2005 10:39 schreef markvleth het volgende:

[..]

Ik heb die link even bekeken maar er staan een hoop merkwaardige dingen in.
Ten eerste het rare idee dat je geen username (user) in je sessie zou mogen opslaan. Dat is natuurlijk de reinste onzin, dat mag wel. Of je nu aan de hand van een variabele controleert of een gebruikers is aangemeld of een volledige user maakt het risico niet groter of kleiner. Oftewel username in sessie stoppen mag wel.

Verder wordt er voorgeteld een database te gebruiken voor het langdurig aangemeld houden van personen. Ook dit is not done, het creeert juist een beveiligings risico. Een database is hier tevens niet voor bedoeld.
Hoe zorg ik dan voor het langdurig aangemeld houden van personen?
markvlethdinsdag 19 april 2005 @ 15:31
met behulp van je sessie natuurlijk, je kunt de geldigheidsduur van je sessie toch instellen, of bedoel je dingen als "keep me logged in"
DionysuZdinsdag 19 april 2005 @ 15:36
quote:
Op dinsdag 19 april 2005 15:31 schreef markvleth het volgende:
met behulp van je sessie natuurlijk, je kunt de geldigheidsduur van je sessie toch instellen, of bedoel je dingen als "keep me logged in"
jup. Als ik ingelogd wil blijven gedurende een hele sessie is dat het probleem niet. Er kan een vinkje gezet worden bij het inloggen zodat de betreffende user ingelogd blijft. Ik doe dat nu dmv een tabel waarin ip,userid en een randomwaarde worden opgeslagen, waarvan de randomwaarde ook in de cookie van de gebruiker staat. Deze cookie is dan gewoon geldig tot het einde der tijden . Bij het uitloggen kunnen mensen dan ook kiezen voor 'deze client uitloggen' 'alle clients uitloggen' etc. net als bij fok!.
Darkomendinsdag 19 april 2005 @ 15:41
quote:
Op dinsdag 19 april 2005 15:15 schreef markvleth het volgende:
Je kunt toch niet zomaar gegevens in je sessie wijzigen?
Ik had begrepen dat sessies te kapen waren?
Zie die link helemaal bovenaan.
Dus stel dat iemand die sessie kaapt en ik mbv die sessie info opvraag zou iemand dus misbruik kunnen maken?
markvlethdinsdag 19 april 2005 @ 15:46
quote:
Op dinsdag 19 april 2005 15:36 schreef DionysuZ het volgende:
jup. Als ik ingelogd wil blijven gedurende een hele sessie is dat het probleem niet. Er kan een vinkje gezet worden bij het inloggen zodat de betreffende user ingelogd blijft. Ik doe dat nu dmv een tabel waarin ip,userid en een randomwaarde worden opgeslagen, waarvan de randomwaarde ook in de cookie van de gebruiker staat. Deze cookie is dan gewoon geldig tot het einde der tijden . Bij het uitloggen kunnen mensen dan ook kiezen voor 'deze client uitloggen' 'alle clients uitloggen' etc. net als bij fok!.
Maar dat betekend dat die sessie dan nog steeds even kaapbaar is als domweg het wachtwoord aan client kant op te slaan in een cookie, het enige voordeel is dat het wachtwoord(md5) van de gebruiker niet over is gestuurd. Maar daarvoor bevuil je wel je db. Geen goede oplossing dus..
markvlethdinsdag 19 april 2005 @ 15:49
quote:
Op dinsdag 19 april 2005 15:41 schreef Darkomen het volgende:
Ik had begrepen dat sessies te kapen waren?
Zie die link helemaal bovenaan.
Dus stel dat iemand die sessie kaapt en ik mbv die sessie info opvraag zou iemand dus misbruik kunnen maken?
Iemand kan niet zomaar de variabelen in de sessie wijzigen. Het kapen van een sessie wil dus niet zeggen dat je niet meer kunt controleren op ip, komt het ip in de sessie niet overeen met het ip van de huidige aanvraag dan is het eventueel een poging tot kaping...
Darkomendinsdag 19 april 2005 @ 15:52
Oke dan zou ik het niet op hoeven te slaan dus, maar niet echt verkeerd dus
Tnx, ik haal het wel weg, scheelt weer info in de db
DionysuZdinsdag 19 april 2005 @ 16:07
quote:
Op dinsdag 19 april 2005 15:46 schreef markvleth het volgende:

[..]

Maar dat betekend dat die sessie dan nog steeds even kaapbaar is als domweg het wachtwoord aan client kant op te slaan in een cookie, het enige voordeel is dat het wachtwoord(md5) van de gebruiker niet over is gestuurd. Maar daarvoor bevuil je wel je db. Geen goede oplossing dus..
Tweede voordeel is dat slechts 1 ip geldig is voor die code en als iemand dus die code onderschept er weinig mee kan aangezien hij ook nog het ip moet hebben. Als iemand een wachtwoord onderschept of een hash van een wachtwoord kan hij daar veel meer mee. Maar als het geen goede oplossing is, hoe moet ik het dan doen? Wil graag een goed beveiligde website.
sabandinsdag 19 april 2005 @ 16:16
quote:
Op dinsdag 19 april 2005 14:21 schreef Darkomen het volgende:

[..]

Wat ik doe is een deel van het ip adres met md5() encrypten en in de database en een sessie oplsaan.

Ik kontroleer dan beide, of de remote adress hetzelfde is als het opgeslagen ip in de database en in de sessie.
En hoe doe je;
Logged in as $username
Of, welkom $username
Steeds de username opvragen bij elke hit ?
Ik stop het gewoon in een sessie ...
markvlethdinsdag 19 april 2005 @ 17:55
quote:
Op dinsdag 19 april 2005 16:07 schreef DionysuZ het volgende:
Tweede voordeel is dat slechts 1 ip geldig is voor die code en als iemand dus die code onderschept er weinig mee kan aangezien hij ook nog het ip moet hebben. Als iemand een wachtwoord onderschept of een hash van een wachtwoord kan hij daar veel meer mee. Maar als het geen goede oplossing is, hoe moet ik het dan doen? Wil graag een goed beveiligde website.
Die ip controle voer je ook uit zonder dat je nieuwe codes verzint, dus van een tweede voordeel is al geen sprake. Als je het goed beveiligd wil hebben doe je alles over https en biedt je geen faciliteiten tot het ingelogd blijven (iig niet aan admins)...
DionysuZdinsdag 19 april 2005 @ 18:32
https is niet beschikbaar helaas. Ik vraag me af hoe bijv. fok! het doet of phpbb
dankodinsdag 19 april 2005 @ 19:03
Ik sla verjaardagen als een timestamp op in een tabel, nu wil ik ze laten sorteren op de verjaardag en niet op geboortedag

ORDER by user_birthday ASC

dit werkt niet goed omdat de geboortejaar mee wordt genomen. zo komt 1-05-1983 voor 28-04-1986 en dat moet natuurlijk niet.
hoe kan ik dus sorteren op zoiets als user_birthday/user_birthay-year zodat er wordt gesorteerd op de dag en de maand en niet meer op jaar.
markvlethdinsdag 19 april 2005 @ 19:04
waarschijnlijk niet handig genoeg gezien de druk die op db komt te staan.
SuperRembodinsdag 19 april 2005 @ 19:14
quote:
Op dinsdag 19 april 2005 19:03 schreef danko het volgende:
Ik sla verjaardagen als een timestamp op in een tabel, nu wil ik ze laten sorteren op de verjaardag en niet op geboortedag

ORDER by user_birthday ASC

dit werkt niet goed omdat de geboortejaar mee wordt genomen. zo komt 1-05-1983 voor 28-04-1986 en dat moet natuurlijk niet.
hoe kan ik dus sorteren op zoiets als user_birthday/user_birthay-year zodat er wordt gesorteerd op de dag en de maand en niet meer op jaar.
Kijk eens naar de datum en tijd functies van MySql. Converteer de timestamp naar een datum, haal er dan de maand en day uit. Daar kan je op sorteren.

Dit zou ook wel eens kunnen werken, maar misschien dat het ronde de jaarwisselingen of 28/29 februari net mis gaat.

1ORDER BY timestamp MOD 31556926 


(31556926 is het aantal seconden in een jaar )

[ Bericht 23% gewijzigd door SuperRembo op 19-04-2005 19:20:41 ]
dankodinsdag 19 april 2005 @ 19:20
quote:
Op dinsdag 19 april 2005 19:14 schreef SuperRembo het volgende:Converteer de timestamp naar een datum, haal er dan de maand en day uit. Daar kan je op sorteren.
kan dit direct in de eerste query al gebeuren? dus al meteen bij het uitlezen van de gegevens en niet achteraf dmv een array?
SuperRembodinsdag 19 april 2005 @ 19:23
quote:
Op dinsdag 19 april 2005 19:20 schreef danko het volgende:

[..]

kan dit direct in de eerste query al gebeuren? dus al meteen bij het uitlezen van de gegevens en niet achteraf dmv een array?
Het zijn MySql functies, die worden dus door MySql uitgevoerd in een query.
DionysuZdinsdag 19 april 2005 @ 19:36
als het verjaardagen tussen 1970 en 2038 zijn, kun je sorteren op UNIX_TIMESTAMP(verjaardag)
SuperRembodinsdag 19 april 2005 @ 19:49
quote:
Op dinsdag 19 april 2005 19:36 schreef DionysuZ het volgende:
als het verjaardagen tussen 1970 en 2038 zijn, kun je sorteren op UNIX_TIMESTAMP(verjaardag)
Daar schiet je niets mee op, bovendien is het al een timestamp.
DionysuZdinsdag 19 april 2005 @ 19:57
quote:
Op dinsdag 19 april 2005 19:49 schreef SuperRembo het volgende:

[..]

Daar schiet je niets mee op, bovendien is het al een timestamp.
owjah duuuuhh.. verkeerd gelezen

misschien dan ORDER BY MONTH(datum), DAY(datum) ?
Darkomendinsdag 19 april 2005 @ 20:48
quote:
Op dinsdag 19 april 2005 16:16 schreef saban het volgende:

[..]

En hoe doe je;
Logged in as $username
Of, welkom $username
Steeds de username opvragen bij elke hit ?
Ik stop het gewoon in een sessie ...
Dat staat alleen op de inlog pagina, voor de rest vindt ik het niet noditg omdat te laten zien.
myzwoensdag 20 april 2005 @ 13:01
quote:
Op dinsdag 19 april 2005 14:24 schreef Juggernaut het volgende:
je doet het niet. img is bij jou een vaste waarde. Je moet door de array met tags loopen en dan elke keer img vervangen door de tag. in jouw geval loopt ie dus 3x en doet ie ook 3x de preg_match_all. bestudeer m'n link nog maar eens goed.
[ code verwijderd ]
Nu snap ik wat ik met d elink moest! Bedankt Juggernaut
BaggerUserwoensdag 20 april 2005 @ 16:35
ik zit met een dilemma...
ik wil een dynamisch plaatje maken.
nu wil ik dat hij elke waarde van de array zegmaar netjes onderelkaar zet.
maar voordat ik dat kan doen moet ik al weten hoegroot het plaatje moet worden
maar om nou 2 keer die hele loop af te gaan dus eigelijk wil i kdit hebben:

loop -> zet elke keer het maken van de text in 1 lange variabele en doet ook i++;
aan het einde van de loop wordt het plaatje gemaakt
en daarna wordt de variabele neergezet

dus ik wil eigenlijk een soort tabel maken ik kan het niet goed uitleggen..


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
<?php
$array[0] = "0";
$array[1] = "1";
$array[2] = "2";
$array[3] = "3";
$array[4] = "4";

$i = 0;

  foreach($array as $array) 
  {
   $i++;
  }

   $pic_width  = 320; 
   $pic_height = 50; 

$im=ImageCreate($pic_width,$pic_height); 

$achtergrond_kleur = imagecolorallocate ($im, 255, 209, 16);

$zwart = imagecolorallocate ($im, 0, 0, 0);
$wit = imagecolorallocate ($im, 255, 255, 255);
$geel = imagecolorallocate ($im, 255, 209, 16);

$font = imageloadfont('../gdf/proggyclean.gdf');

// text gebruiken
  $randomfunctie = rand(20,290); //random getal
  $text = "".$array['$i']."";

  $text_grootte = 8; //van 0 - 15
  $text_hoek = 0; // hoek waarin de text is geschreven
  
  $x_text = 10;
  $y_text = 30;
  
  $text_kleur = $zwart;
  
$test = imagettftext ($im, $text_grootte, $text_hoek, $x_text, $y_text, $text_kleur, "Arial", $text);;

//einde text gebruiken


// output the image
header("Content-type: image/png");
imagepng($im);
ImageDestroy($im); 


?>
sylvesterrrwoensdag 20 april 2005 @ 16:52
Ik ga het niet voorkauwen, maar ik geef je wel een aantal relevante links:
http://nl3.php.net/manual/en/function.count.php
http://nl3.php.net/manual/en/function.imagefontheight.php
BaggerUserwoensdag 20 april 2005 @ 16:55
ja functie count.. dan telt ie hoeveel er in de array staat
maar eigenlijk sd at toch ook weer een soort van loop (hij moet de hele array bij langs

is het niet mgoelijk om eerst alle
imagettftext ($im, $text_grootte, $text_hoek, $x_text, $y_text, $text_kleur, "Arial", $text);

in een array te zetten en onderaan de pagina pas te plaatsen ? dat wil me eigenlijk niet echt lukken
ikke_ookwoensdag 20 april 2005 @ 17:22
Ik zie het volgende in mijn acces log van mijn lokale server staan:
1
2
3
4
5
6
7
24.126.22.197 - - [20/Apr/2005:16:32:07 +0200] "POST
 /_vti_bin/_vti_aut/fp30reg.dll HTTP/1.1" 404 301
24.126.22.197 - - [20/Apr/2005:16:58:39 +0200] "POST 
/_vti_bin/_vti_aut/fp30reg.dll HTTP/1.1" 404 301
24.126.22.197 - - [20/Apr/2005:16:58:59 +0200] "SEARCH 
/\x90\x04H\[.......... veel meer x04h....... ] \x04H\x90
 [..........veel meer \x90........] \x90\" 414 337

Wat is dat voor iets raars?Iets om me zorgen over te maken?
sylvesterrrwoensdag 20 april 2005 @ 17:31
Maak je maar geen zorgen.
Klik #1
Klik #2
Klik #3
ikke_ookwoensdag 20 april 2005 @ 17:43
hmm ik snap er eigenlijk niks van, ja alleen dan dat ik me geen zorgen hoef te maken.. maar wat zit er precies achter?

en dit?
1
2
3
4
"OPTIONS / HTTP/1.1" 200 -           
"PROPFIND /admin%24 HTTP/1.1" 404 278
"OPTIONS / HTTP/1.1" 200 -           
"PROPFIND /admin%24 HTTP/1.1" 404 278
the_disheaverdonderdag 21 april 2005 @ 12:11
Zo, mijn beveiliging is nu goed, maar volgens mij nog 1 klein zwak schakeltje:

Als je je password verstuurd, zal het als plain-tekst (wel via post) verstuurd worden naar m'n server, waar het ge-MD5 wordt.

Is dit een redelijk zwakke schakel? En hoe kan ik het voorkomen? Via een beveiligde verbinding?
Zo veilig hoeft mijn site echt niet te zijn, maar wanneer je toch bezig bent
markvlethdonderdag 21 april 2005 @ 12:13
Via een beveiligde verbinding inderdaad. Valt eigelijk weinig aan toe te voegen.
the_disheaverdonderdag 21 april 2005 @ 12:40
Enkel hoe je een beveiligde verbinding opzet... Maar dat heeft weinig met php te maken, ik ga wel ff zoeken
BaggerUserdonderdag 21 april 2005 @ 12:53
hoi simpel vraagje denk ik ik heb gegeken op php.netm aar volgens mij gebruik ik de functie wel goed. een gewone retangle wil die wel tekenen.. maar een filled niet
1
2
3
4
5
6
  $retangle_x1 = $pic_width -1;
  $retangle_y1 = $pic_height -1;
  $retangle_x2 = 0;
  $retangle_y2 = 40;
        
imagerectangle($im, $retangle_x1, $retangle_y1, retangle_x2, retangle_y2, $zwart );


1
2
3
4
5
6
  $retangle_x1 = 10;
  $retangle_y1 = 20;
  $retangle_x2 = 30;
  $retangle_y2 = 40;
  
imagefilledrectangle($im, $retangle_x1, $retangle_y1, retangle_x2, retangle_y2, $zwart );
sylvesterrrdonderdag 21 april 2005 @ 13:02
quote:
Op donderdag 21 april 2005 12:11 schreef the_disheaver het volgende:
Zo, mijn beveiliging is nu goed, maar volgens mij nog 1 klein zwak schakeltje:

Als je je password verstuurd, zal het als plain-tekst (wel via post) verstuurd worden naar m'n server, waar het ge-MD5 wordt.

Is dit een redelijk zwakke schakel? En hoe kan ik het voorkomen? Via een beveiligde verbinding?
Zo veilig hoeft mijn site echt niet te zijn, maar wanneer je toch bezig bent
Je zou het wachtwoord ook mbv javascript kunnen MD5'en.
markvlethdonderdag 21 april 2005 @ 13:12
quote:
Op donderdag 21 april 2005 13:02 schreef sylvesterrr het volgende:
Je zou het wachtwoord ook mbv javascript kunnen MD5'en.
Probeer eens voor je zelf na te gaan wat dan het verschil is.
sylvesterrrdonderdag 21 april 2005 @ 13:19
quote:
Op donderdag 21 april 2005 13:12 schreef markvleth het volgende:

[..]

Probeer eens voor je zelf na te gaan wat dan het verschil is.
Het wordt client-side geMD5't, dus wordt niet het wachtwoord (bijv. 'abcdefg'), maar de MD5-gecodeerde string over het netwerk verstuurd.
the_disheaverdonderdag 21 april 2005 @ 13:22
Is de uitkomst van javascript-md5 hetzelfde als php-md5?
markvlethdonderdag 21 april 2005 @ 13:29
quote:
Op donderdag 21 april 2005 13:19 schreef sylvesterrr het volgende:
Het wordt client-side geMD5't, dus wordt niet het wachtwoord (bijv. 'abcdefg'), maar de MD5-gecodeerde string over het netwerk verstuurd.
laat ik het zo vragen dan:
Als ik het gecodeerde password onderschep, kan ik daarmee inloggen?
BaggerUserdonderdag 21 april 2005 @ 13:36
quote:
Op donderdag 21 april 2005 13:29 schreef markvleth het volgende:

[..]

laat ik het zo vragen dan:
Als ik het gecodeerde password onderschep, kan ik daarmee inloggen?
ligt eraan wat je verder weet lijkt me
BaggerUserdonderdag 21 april 2005 @ 14:12
maar niemand die het weet van die imagerectangle ?
the_disheaverdonderdag 21 april 2005 @ 14:20
quote:
Op donderdag 21 april 2005 13:29 schreef markvleth het volgende:

[..]

laat ik het zo vragen dan:
Als ik het gecodeerde password onderschep, kan ik daarmee inloggen?
Als je het gecodeerde password invult in password veld, wordt dat nogmaals gecodeerd (2keer dus), en zal het niet het zelfde zijn als 1 maal gecodeerde wachtwoord in mijn wachtwoord-bestand.

Je zult hem moeten decoderen, en dat kan met md5 niet.
the_disheaverdonderdag 21 april 2005 @ 14:24
quote:
Op donderdag 21 april 2005 14:12 schreef BaggerUser het volgende:
maar niemand die het weet van die imagerectangle ?
Wat is de waarde van $zwart?
markvlethdonderdag 21 april 2005 @ 15:32
quote:
Op donderdag 21 april 2005 14:20 schreef the_disheaver het volgende:
Als je het gecodeerde password invult in password veld, wordt dat nogmaals gecodeerd (2keer dus), en zal het niet het zelfde zijn als 1 maal gecodeerde wachtwoord in mijn wachtwoord-bestand.

Je zult hem moeten decoderen, en dat kan met md5 niet.
Ik kan toch ook javascript eruit slopen?

Okee, ik hoopte dat je er zelf achter kwam, maar client side coderen haalt dus niets uit
sylvesterrrdonderdag 21 april 2005 @ 15:36
Als je het wachtwoord client-side codeert, kan het daadwerkelijke wachtwoord niet worden onderschept. Dat betekent dus dat wanneer men dit gecodeerde wachtwoord heeft onderschept, 'het slachtoffer' niet hoeft te vrezen dat zijn wachtwoord (dat hij voor alles gebruikt) in verkeerde handen is gevallen.
markvlethdonderdag 21 april 2005 @ 15:43
maar ik kan wel inloggen met dat wachtwoord...
sylvesterrrdonderdag 21 april 2005 @ 15:48
quote:
Op donderdag 21 april 2005 15:43 schreef markvleth het volgende:
maar ik kan wel inloggen met dat wachtwoord...
Heb ik ergens gezegd dat je dat niet kan?
markvlethdonderdag 21 april 2005 @ 15:50
Het was niet voor jou bedoeld, het was een algemene opmerking. Zodat mensen niet het idee hebben dat het nu veilig is...
the_disheaverdonderdag 21 april 2005 @ 16:05
Coderen met Javascript zorgt enkel ervoor dat het ongecodereerde wachtwoord niet gezien kan worden, maar om te voorkomen dat iemand met de gecondeerde wachtwoord kan inloggen is https nodig?
DionysuZdonderdag 21 april 2005 @ 16:21
kun je niet in de form een timestamp meesturen als variabele, samen met het wachtwoord die je javascript codeert door: md5(md5(wachtwoord) + timestampvariabele) te doen, en dan serverside controleert of die timestamp binnen de afgelopen minuut ligt en dan het wachtwoord vervolgens controleert? Het is dan nog niet helemaal veilig, maar toch al iets veiliger of niet?
markvlethdonderdag 21 april 2005 @ 17:50
quote:
Op donderdag 21 april 2005 16:21 schreef DionysuZ het volgende:
kun je niet in de form een timestamp meesturen als variabele, samen met het wachtwoord die je javascript codeert door: md5(md5(wachtwoord) + timestampvariabele) te doen, en dan serverside controleert of die timestamp binnen de afgelopen minuut ligt en dan het wachtwoord vervolgens controleert? Het is dan nog niet helemaal veilig, maar toch al iets veiliger of niet?
Misschien wel veiliger, maar waarom niet https gebruiken, die encrypt het hele verkeer, oftewel geen nuttige data voor derden zonder de juiste sleutel...
DionysuZdonderdag 21 april 2005 @ 17:57
ja https is handig.. maar hoe installeer je SSL.. heb eens opgezocht en bij lycos schijnt het mogelijk te zijn:
quote:

SSL (Secure Socket Layer) is mogelijk op jouw VDS. Je moet het juiste SSL certificaat leveren en de SSL server installeren. Je kunt een enkele domein beveiligen door een certificate te gebruiken (bijv. jouwveiligedomein.nl) en maak daarna directories om individuele beveiligde pagina's voor je klanten te maken (bijv. jouwveiligedomein.nl/gebruiker1).
DionysuZdonderdag 21 april 2005 @ 17:58
hm ik lees het nog eens een keer en ik heb helemaal geen VDS :|

Voor mij is https niet beschikbaar dus zal het op een andere manier moeten doen
markvlethdonderdag 21 april 2005 @ 18:22
"plat" versturen is doorgaans afdoende, alleen in publieke ruimtes zoals scholen en bibliotheken is het te sniffen. Je kunt immers niet buiten je eigen subnet sniffen en providers hebben dat doorgaans wel op orde...
R-Mondonderdag 21 april 2005 @ 19:46
Ik heb weer eens een probleem waat ik niet uitkom.

Dit is een stukje van een script dat een XML-feed leest en print.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
for ($x = 0; $x &lt; sizeof($index['Member']); $x++) {
    for (
$y = 0; $y &lt; sizeof($member_tags); $y++) {
        if (
$values[$index[$member_tags[$y]][$x]]['level'] == 5)
        {
            
$members[$x][$member_tags[$y]] = $values[$index[$member_tags[$y]][$x]]['value'];
        }
    }
}
                    
$printarray = $this-&gt;getOption(Memberstats);
$printarray = explode(" ", $printarray);

for (
$x = 0; $x &lt; sizeof($index['Member']); $x++) {
    foreach(
$printarray as $z)
        {
        echo
$z . ": " . $members[$x][$z] . "<br />";
    }
    echo
"<br />";
}
?>


Wat er gebeurt:
Een loop, voor elke member de waarden van de tags van die member in een array stoppen. (eerste for)
De tags die geprint moeten worden in een array stoppen (regel 12, 13)
Een loop die voor elk member de tags die geprint moeten worden print met daarachter de bijbehorende waardes. (de for met de foreach)

Het werkt prima op een ding na, en dat is dat alles goed wordt geprint, maar daarna alle tags nog een keer worden geprint, zonder bijbehorende waardes.

Kan iemand mij alsjeblieft hiermee helpen.

De dubbele print is te bezichtigen op http://test.globalog.net/nucleus3.2/ aan de linkerkant.
SuperRembodonderdag 21 april 2005 @ 20:20
Die [php] tag verneukt de code, dat weet je toch wel

Staat het in $printarray al dubbel? Dat is eenvoudig te checken met print_r();

(Wordt dit een vervanging van mijn WhatPulse stats? )
R-Mondonderdag 21 april 2005 @ 20:25
quote:
Op donderdag 21 april 2005 20:20 schreef SuperRembo het volgende:
Die [php] tag verneukt de code, dat weet je toch wel
Kleurtjes.
quote:
Staat het in $printarray al dubbel? Dat is eenvoudig te checken met print_r();
Gekeken, nee.
quote:
(Wordt dit een vervanging van mijn WhatPulse stats? )/
Nee, het moet een plugin worden voor een CMS. Voor 1 user wordt natuurlijk de voornaamste functie maar als er een community'tje komt met een teampje dan kan het iig.
SuperRembodonderdag 21 april 2005 @ 20:55
Wat gebeurt er als 'level' != 5 is? Dan sla je $member[$x] over, maar je print hem verderop wel.
R-Mondonderdag 21 april 2005 @ 20:59
quote:
Op donderdag 21 april 2005 20:55 schreef SuperRembo het volgende:
Wat gebeurt er als 'level' != 5 is? Dan sla je $member[$x] over, maar je print hem verderop wel.
Ik begrijp niet wat je bedoelt.
the_disheaverdonderdag 21 april 2005 @ 21:12
Dan laat ik het voorlopig maar plat verzenden... Maar ik draai mijn eigen server, dus moet het lijkt mij mogelijk zijn...

Waar staat VDS eigenlijk voor?
R-Mondonderdag 21 april 2005 @ 21:13
quote:
Op donderdag 21 april 2005 21:12 schreef the_disheaver het volgende:
Waar staat VDS eigenlijk voor?
Virtual Dedicated Server, iets nieuws van Lycos.
SuperRembodonderdag 21 april 2005 @ 22:05
quote:
Op donderdag 21 april 2005 20:59 schreef R-Mon het volgende:

[..]

Ik begrijp niet wat je bedoelt.
In de laatste loop loopt $x tot sizeof($index['Member']), maar is $members wel zo lang?
BaggerUserdonderdag 21 april 2005 @ 22:54
quote:
Op donderdag 21 april 2005 14:24 schreef the_disheaver het volgende:

[..]

Wat is de waarde van $zwart?
$zwart = imagecolorallocate ($im, 0, 0, 0);

die is bij beide hetzelfde dus daar kan het ook niet aanliggen lijkt me?....

alles is hetzelfde behalve het woorde "filled"
the_disheavervrijdag 22 april 2005 @ 00:46
ook de waardes voor de grootte van het rechthoek : bij de eerste tekend hij hem van rechtsonder naar linksboven. Degenen die hij moet fillen is wel 'juist' (volgens php.net)
BaggerUservrijdag 22 april 2005 @ 01:02
ja heb vanales al geprobeerd.. ook om dat andersom te zetten etc..

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
<?php
  $text_grootte = 8; //van 0 - 15
  $text_height = imagefontheight($text_grootte);
  $text_width = imagefontwidth($text_grootte);

   $count = count($array); 

   $pic_width  = 200;
   $pic_height = ($count * $text_height) + (2 * $text_height); 


$im=ImageCreate($pic_width,$pic_height); 

$achtergrond_kleur = imagecolorallocate ($im, 255, 209, 16);

$zwart = imagecolorallocate ($im, 0, 0, 0);
$wit = imagecolorallocate ($im, 255, 255, 255);
$geel = imagecolorallocate ($im, 255, 209, 16);

   // Zoek hoe breed en hoe hoog de tekst gaat worden 
   if (!isset($text)) $text = "Gecentreerd!"; 
   $font = "Verdana";
   $fontsize = 8; 
   
   $box = ImageTTFBBox($fontsize, 0, $font, $text); 
   $hoogte = $box[1] - $box[7]; 
   $breedte = $box[2] - $box[0];    
    
   // Bereken de "default" coordinaten 
   $x_coordinaat = $box[0]; 
    
   // Bereken nu de verschuiving die nodig is om de tekst de centreren 
   $offset_x = (int)((ImageSX($im) - $breedte) / 2); 

    

//Border
  $retangle_x1 = $pic_width -1;
  $retangle_y1 = $pic_height -1;
  $retangle_x2 = 0;
  $retangle_y2 = 40;
        
imagerectangle($im, $retangle_x1, $retangle_y1, retangle_x2, retangle_y2, $zwart );
//Einde border

//Balk
  $retangle_x1 = 200;
  $retangle_y1 = $hoogte + 4;
  $retangle_x2 = 0;
  $retangle_y2 = 0;
  
imagefilledrectangle($im, $retangle_x1, $retangle_y1, retangle_x2, retangle_y2, $zwart );
//Einde Balk

   // Teken de tekst 
   ImageTTFText($im, $fontsize, 0, 
      $x_coordinaat + $offset_x, 
      $hoogte + 2, 
      $wit, $font, $text); 

// output the image
header("Content-type: image/png");
imagepng($im);
ImageDestroy($im); 


?>


tsja ik weet het eigenlijk niet meer
SuperRembovrijdag 22 april 2005 @ 08:42
Als je de syntax-fouten er uit haalt werkt het wel hoor.
retangle_x2 -> $retangle_x2
retangle_y2 -> $retangle_y2

En count($array) geeft een error omdat $array niet bestaat. Maar dat kan eraan liggen dat het een uitgekleed voorbeeld is.
R-Monvrijdag 22 april 2005 @ 09:05
quote:
Op donderdag 21 april 2005 22:05 schreef SuperRembo het volgende:

[..]

In de laatste loop loopt $x tot sizeof($index['Member']), maar is $members wel zo lang?
Aha. Nee dus. Ik heb nu $x tot sizeof($members) en dat werkt wel. Dankjewel!
BaggerUservrijdag 22 april 2005 @ 11:23
quote:
Op vrijdag 22 april 2005 08:42 schreef SuperRembo het volgende:
Als je de syntax-fouten er uit haalt werkt het wel hoor.
retangle_x2 -> $retangle_x2
retangle_y2 -> $retangle_y2

En count($array) geeft een error omdat $array niet bestaat. Maar dat kan eraan liggen dat het een uitgekleed voorbeeld is.
oei sowieso niet netjes dat ik die er niet had staan maar die had ik er bij die ander perongeluk ook niet staan dus vandaar dat ik daar niet op had gelet
en het was idd een gestript voorbeeld vandaar dat de array er niet in zat

maar idd het werkt nu wel! bedankt
markvlethvrijdag 22 april 2005 @ 13:33
Een opmerking van een andere orde. Ik zou in plaats "sizeof" gebruikmaken van "count". Ze schijnen beide hetzelfde te doen, maar in de meeste andere talen geeft sizeof de memory allocatie grootte aan en dus niet de lengte van een array. Count is dus een betere benaming.
BaggerUserzaterdag 23 april 2005 @ 14:50
1    imagestring ($im,4,$x_temp,$y_temp,$txt_temp,$Kleur['Geel']); 


ik wil b.v. een stukje text op een plaatje.. alleen in dat stukje text wil ik 1 woord een andere kleur..
is dit ook mogelijk of niet kan je een stuk text maar 1 kleur geven ?..
DutchBloodzaterdag 23 april 2005 @ 15:09
quote:
Op zaterdag 23 april 2005 14:50 schreef BaggerUser het volgende:

[ code verwijderd ]

ik wil b.v. een stukje text op een plaatje.. alleen in dat stukje text wil ik 1 woord een andere kleur..
is dit ook mogelijk of niet kan je een stuk text maar 1 kleur geven ?..
Gewoon 2/3 imagestrings, 2 de gewone kleur, en een de andere kleur. Met imagefontheight() en imagefontwidth() kun je de hoogte en breedte opvragen, en zo dus de coördinaten berekenen.
BlueCurlzondag 24 april 2005 @ 10:38
tvp
DroekesTijgerzondag 24 april 2005 @ 22:06
Hoe kan ik het beste het volgende aanpakken?

Ik heb een soort van webzine, waarin af en toe ook foto's voorkomen. Nu heb ik daarvan 2 versies: een kleine versie (bv sfoto1.jpg) en een grote versie (foto1.jpg).

Wat ik nu wil is dat ik in mijn backend iets intyp van [img]foto1.jpg[/img] en dat hij dat verandert in een plaatje sfoto1.jpg die dan weer een link is naar

1http://www.website.nl/?img=www.website.nl/images/foto1.jpg.


Ik begrijp dat dit mogelijk is met preg_replace oid, maar ik snap niet zoveel van de expressies die ik nodig heb.

Kan iemand mij helpen? Of heeft er iemand andere ideeen?
ikke_ookzondag 24 april 2005 @ 22:18
kun je hier wat mee?
1
2
3
4
5
6
7
8
9
10
11
$regexps = array(
   // [url=http://foo.net]Foo[/url] => <a href="http://foo.net">Foo</a>
   '#\[url=(https?://.*?)\](.*?)\[/url\]#i'      => '<a href="\1">\2</a>',

   // [url=foo.net]Foo[/url] => <a href="http://foo.net">Foo</a>
   '#\[url=(.*?)\](.*?)\[/url\]#i'               => '<a href="http://\1">\2</a>',
);

foreach ($regexps as $search=>$replace) {
   $text = preg_replace($search, $replace, $text);
}

Het is van SuperRembo en t schijnt heel goed te zijn om urls om te zetten... Ik snap t zelf niet precies, maar ik denk wel dat je t om kunt bouwen naar jouw wens...
SuperRembozondag 24 april 2005 @ 22:19
quote:
Op zondag 24 april 2005 22:06 schreef DroekesTijger het volgende:
Kan iemand mij helpen? Of heeft er iemand andere ideeen?
Kijk eens naar heb begin van dit topic.
DionysuZmaandag 25 april 2005 @ 00:08
dit is wat ik gebruik:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
      $bbtags=array
      (
        '#\[b\](.*?)\[/b\]#msi'               => '<strong>\1</strong>',
        '#\[i\](.*?)\[/i\]#msi'               => '<i>\1</i>',
        '#\[u\](.*?)\[/u\]#msi'               => '<u>\1</u>',
        '#\[s\](.*?)\[/s\]#msi'               => '<s>\1</s>',
        '#\[sup\](.*?)\[/sup\]#msi'           => '<sup>\1</sup>',
        '#\[sub\](.*?)\[/sub\]#msi'           => '<sub>\1</sub>',
        '#\[url\](.*?)\[/url\]#msi'           => '<a target=_blank href="\1">\1</a>',
        '#\[url=(.*?)\](.*?)\[/url\]#msi'     => '<a target=_blank href="\1">\2</a>',
        '#\[img\](.*?)\[/img\]#msi'           => '<img alt="" class=topicimage src="\1">',
        '#\[center\](.*?)\[/center\]#msi'     => '<div align="center">\1</div>',
        '#\[right\](.*?)\[/right\]#msi'       => '<div align="right">\1</div>',
        '#\[list\](.*?)\[/list\]#msi'         => '<ul>\1</ul>',
        '#\[\*\](.*?)#msi'                    => '<li>\1',
        '#\[mail=(.*?)\](.*?)\[/mail\]#msi'   => '<a href="mailto:\1">\2</a>',
        '#\[code\](.*?)\[/code\]#msi'         => '<font class=small>Code:</font><div class=quote><code>\1</code></div>',
        '#\[quote\](.*?)\[/quote\]#msi'       => '<div class=divquote><font class=small>Quote:</font><br><div class=quote><font color=gray>\1</font></div></div>',
        '#\[quote=(.*?)\](.*?)\[/quote]#msi'  => '<div class=divquote><font class=small>Quote "</font><font class=smallb>\1</font><font class=small>":</font><br><div class=quote><font color=gray>\2</font></div></div>',
      ) ;

      $message = preg_replace(array_keys($bbtags), array_values($bbtags), $message);
#ANONIEMmaandag 25 april 2005 @ 11:06
even een kleine vraag, hoe format ik een timestamp naar een datum/tijd zoals hier op fok word gebruikt bij de topiclisting? Ik kom er niet uit
Juggernautmaandag 25 april 2005 @ 11:18
met setlocale de taal instellen. let op: voor linux en windows bakken moet je een andere setlocale gebruiken
http://nl3.php.net/manual/nl/function.setlocale.php

en dan de timestamp omzetten naar iets leesbaars met strfrtime()
http://nl3.php.net/manual/nl/function.strftime.php
#ANONIEMmaandag 25 april 2005 @ 11:25
quote:
Op maandag 25 april 2005 11:18 schreef Juggernaut het volgende:
met setlocale de taal instellen. let op: voor linux en windows bakken moet je een andere setlocale gebruiken
http://nl3.php.net/manual/nl/function.setlocale.php

en dan de timestamp omzetten naar iets leesbaars met strfrtime()
http://nl3.php.net/manual/nl/function.strftime.php
Thx, dat gaat wel lukken denk

Nog een vraag; waarom werkt dit opeens niet meer?

1
2
3
4
5
6
<?php
$SQL
= "Select count(reply_id) AS Aantal from fyw_replies where topic_id=".$topic_id;
$query = mysql_query($SQL) or die();
        
$replies = $query['Aantal'];
?>


Ik kan hem in phpmyadmin uitvoeren, krijg ook het juiste aantal terug, maar nu in php de echo uitvoeren werkt niet help!
sylvesterrrmaandag 25 april 2005 @ 11:28
1
2
3
4
5
6
<?php
$SQL
= "Select count(reply_id) AS Aantal from fyw_replies where topic_id=".$topic_id;
$query = mysql_query($SQL) or die();
$data = mysql_fetch_assoc($query);        
$replies = $data['Aantal'];
?>
#ANONIEMmaandag 25 april 2005 @ 11:53
oki dat werkt

alleen die datum/tijd werkt niet goed;

ik gebruik dit:

<?php echo strftime("%m/%d/%y",$topic_datum); ?>

en dit komt eruit:

01/01/70

Terwijl het vorige week donderdag ofzo moet zijn.....beetje raar
Roonaanmaandag 25 april 2005 @ 11:54
is $topic_datum wel een timestamp dan, of een yyyy-mm-dd value, dan moet je eerst strtotime eroverheen gooien.
#ANONIEMmaandag 25 april 2005 @ 11:58
quote:
Op maandag 25 april 2005 11:54 schreef Roönaän het volgende:
is $topic_datum wel een timestamp dan, of een yyyy-mm-dd value, dan moet je eerst strtotime eroverheen gooien.
Woops vergeten
achterop23maandag 25 april 2005 @ 13:08
ik heb lokaal een heleboel tabellen staan (mambo). Hoe krijg ik die met de minste werk online?
Elke tabel an sich is wel te doen, door te exporteren en dan te importeren.

Maar kan je ook een complete database exporteren>>>importeren?
#ANONIEMmaandag 25 april 2005 @ 13:39
quote:
Op maandag 25 april 2005 13:08 schreef achterop23 het volgende:
ik heb lokaal een heleboel tabellen staan (mambo). Hoe krijg ik die met de minste werk online?
Elke tabel an sich is wel te doen, door te exporteren en dan te importeren.

Maar kan je ook een complete database exporteren>>>importeren?
Ja dat kan in PHPMyadmin wel iig, dan moet je ff kijken bij backup hoe dat in zn werk gaat.
achterop23maandag 25 april 2005 @ 13:59
ik zal phpmyadmin even bekijken, thnaks
H4zemaandag 25 april 2005 @ 22:04
Om te beginnen wil ik ff zeggen dat ik een aardige PHPnoob ben, maar daarom bevind ik me atm ook in dit topic

Ik ben bezig om een "aanbod-formulier" in php te maken. Hieronder een screenie van wat ik nu heb:



Als alles is ingevuld wordt er een mailtje met de gegevens naar de beheerder gestuurd, en een bevestigings emailtje naar degene die de gegevens heeft ingevuld. Tot zover werkt 't allemaal, en dit was ook best simpel om te maken.

Maar...de user moet natuurlijk wel meerdere spellen kunnen submitten die hij/zij wil verkopen. Ik wil dus nog een knop "voeg nog een spel toe" erbij hebben. Als hier op wordt geklikt moet er een scherm komen met alleen het volgende:



Hierna moet de user natuurlijk nog een spel kunnen toevoegen, en nog 1, en...etc etc etc. Als hij/zij klaar is, dan kan er op de "verzend" knop gedrukt worden, en wordt er alsnog een mailtje met alle gegevens naar de beheerder gestuurd, en een bevestigings emailtje naar degene die de gegevens heeft ingevuld.

Hoe pak ik dit aan? Ik hoop dat er hier iemand is die me wat aanwijzingen kan geven/in de goede richting kan helpen. Ik kom er zelf namelijk gewoon niet uit.

BVD!
MouseInteractivemaandag 25 april 2005 @ 23:12
Je zou b.v., nadat het formulier verzonden is, een knop op het scherm tonen om nog een spel toe te voegen. Zorg dat je de Persoonsgegevens van de gebruiker ff opslaat in een Sessie ofzo, om deze later weer te gebruiken.
Je kunt de knop om nog een spel toe te voegen ook in een formuliertje zetten (dan is dat een 'submit' knop) en dan zet je de persoonsgegevens in een aantal hidden inputs
dus zo:

1
2
3
4
5
<form action="" method="post">
<input type="hidden" name="naam" value="<?echo". $_POST['naam']."";?>">
/* Hier nog meer hidden inputs */
<input type="submit" name="submit" value="Nog een spel toevoegen">
</form>

Als de gebruiker op de knop drukt, toon je het formuliertje met die 3 velden en zet je de geposte persoonsgegevens bij dat formuliertje ook weer in een hidden input, en verzend je het uiteindelijk.

Ik hoop dat je het een beetje snapt
Roonaandinsdag 26 april 2005 @ 06:12
quote:
wordt er een mailtje met de gegevens naar de beheerder gestuurd
Houdt dit in dat een beheerder handmatig alles op de site moet zetten?
SuperRembodinsdag 26 april 2005 @ 07:42
quote:
Op maandag 25 april 2005 23:12 schreef MouseInteractive het volgende:
Je zou b.v., nadat het formulier verzonden is, een knop op het scherm tonen om nog een spel toe te voegen. Zorg dat je de Persoonsgegevens van de gebruiker ff opslaat in een Sessie ofzo, om deze later weer te gebruiken.
Je kunt de knop om nog een spel toe te voegen ook in een formuliertje zetten (dan is dat een 'submit' knop) en dan zet je de persoonsgegevens in een aantal hidden inputs
dus zo:
[ code verwijderd ]

Als de gebruiker op de knop drukt, toon je het formuliertje met die 3 velden en zet je de geposte persoonsgegevens bij dat formuliertje ook weer in een hidden input, en verzend je het uiteindelijk.

Ik hoop dat je het een beetje snapt
Het kan nog ietje eenvoudiger. Je slaat inderdaad de persoonsgegevens op in een session. Als je het bestelformulier maakt dan kijk je of je persoonsgegevns in de session hebt staan. Als je die hebt dan vul je ze in, anders laat je die velden leeg. Verder hoef je niets anders te doen. Zo kan de gebruiker ook nog eventuele fouten corrigeren.
winuxdinsdag 26 april 2005 @ 10:40
1
2
3
4
5
6
7
8
SELECT 
    *
FROM 
    maand_taken, 
    maand_taken_uitgevoerd 
WHERE 
    maand_taken.id = maand_taken_uitgevoerd.taak_id
 


Ik heb bovenstaande code. Die moet de informatie uit tabel maand_taken halen en controleren of ze al zijn uitgevoerd zijn. Door te kijken in maand_taken_uitgevoerd. Dus als hij is uitgevoerd. staat er in maand_taken_uitgevoerd.uitgevoerd ja of nee. bijv.

maand_taken.id = 1
maand_taken_uitgevoerd.taak_id=1
maand_taken_uitgevoerd.uitgevoerd=nee.

Dan de infrormatie uit maand_taken weergeven

maand_taken.id = 2
maand_taken_uitgevoerd.taak_id=2
maand_taken_uitgevoerd.uitgevoerd=ja.

Dan de infrormatie uit maand_taken NIET weergeven.

Maar als er geen info van een bepaalde taak niet in de tabel maand_taken_uitgevoerd staat. Moet hij hem wel weergeven. Want dan is ie nog niet uitgevoerd.

Hoe doe ik dat?
SuperRembodinsdag 26 april 2005 @ 11:19
1
2
3
SELECT *
FROM maand_taken
LEFT JOIN  maand_taken_uitgevoerd ON  maand_taken.id = maand_taken_uitgevoerd.taak_id


Maar is het wel zo handig dat in een aparte tabel staat?
DionysuZdinsdag 26 april 2005 @ 11:20
SELECT * FROM maand_taken LEFT JOIN maand_taken_uitgevoerd ON maand_taken.id=maand_taken_uitgevoerd.taak_id

ff snel uit mn hoofd, moet je wel nog ff de where clause toevoegen voor het uitgevoerd zijn of nie
DionysuZdinsdag 26 april 2005 @ 11:21
superrembo was me voor
winuxdinsdag 26 april 2005 @ 11:52
Die werkt wel totdat ik erin zet
1WHERE maand_taken_uitgevoerd.uitgevoerd='nee'

En da klopt wel natuurlijk want die is leeg. Dus hoe kan ik dat nou het beste oplossen?
H4zedinsdag 26 april 2005 @ 12:49
quote:
Op dinsdag 26 april 2005 06:12 schreef Roönaän het volgende:

[..]

Houdt dit in dat een beheerder handmatig alles op de site moet zetten?
Wat bedoel je precies?
SuperRembodinsdag 26 april 2005 @ 12:53
Uitgevoerd is dus 'nee' of NULL. Dan wordt het

1WHERE uitgevoerd='nee' OR uitgevoerd IS NULL


Voor een kolom die alleen ja of nee mag zijn kan je beter een tinyint gebruiken. 0=nee, 1=ja.
SuperRembodinsdag 26 april 2005 @ 12:55
quote:
Op dinsdag 26 april 2005 12:49 schreef H4ze het volgende:

[..]

Wat bedoel je precies?
Als iemand een artikel opgeeft, dan wordt een mailtje naar de beheerder gestuurd. Komen de gegevens ook in een database te staan, of moet de beheerder handmatig de advertentie online zetten?
DionysuZdinsdag 26 april 2005 @ 12:55
edit: alweer superrembo voor me grr
DionysuZdinsdag 26 april 2005 @ 12:57
quote:
Op dinsdag 26 april 2005 12:53 schreef SuperRembo het volgende:
Uitgevoerd is dus 'nee' of NULL. Dan wordt het
[ code verwijderd ]

Voor een kolom die alleen ja of nee mag zijn kan je beter een tinyint gebruiken. 0=nee, 1=ja.
of enum('ja','nee') ?
H4zedinsdag 26 april 2005 @ 13:24
quote:
Op dinsdag 26 april 2005 12:55 schreef SuperRembo het volgende:

[..]

Als iemand een artikel opgeeft, dan wordt een mailtje naar de beheerder gestuurd. Komen de gegevens ook in een database te staan, of moet de beheerder handmatig de advertentie online zetten?
Ah zo. Nee die gegevens komen niet in een database te staan. Er wordt namelijk eerst nog onderhandelt tussen de beheerder en degene die het spel wil verkopen (over de prijs, betalingswijze etc etc). Als de beheerder het spel eenmaal heeft ontvangen, dan zet hij 't zelf in de webshop.

Iig allemaal alvast bedankt voor de reacties enzo Ik ga er weer ff verder mee.
BaggerUserdinsdag 26 april 2005 @ 16:16
hey, ik wil mn php updaten maar is het ook mogelijk dat ik al mn instellingen hou of niet?..

heb deze installatie namelijk zo'n jaar draaien nu en wil graag php upgraden (heb nu 4.2.2 )
maar wil wel dat alle instelingen hetzelfde blijven etc anders gaan al mn scripts niet meer werken
en ik zou niet meer precies weten wat ik allemala veranderd heb... is dit mogelijk
H4zedinsdag 26 april 2005 @ 21:49
Ik ben trouwens van plan om ook maar een boek aan te schaffen over php. Ik heb hier al wat e-books...maar dat vind ik niet bepaalt fijn werken En ik wil deze taal wel graag leren (oftewel, ik ben nog maar een beginner). Welk boek raden jullie mij aan?

Ik zat zelf te denken aan het boekje PHP/mySQL voor Dummies (dat ook in de openingspost staat), maar dan heb ik er ook gelijk weer mySQL bij...of is dit juist wel handig? Ook had ik nog dit boek op het oog.

[ Bericht 0% gewijzigd door H4ze op 26-04-2005 22:12:13 ]
MouseInteractivedinsdag 26 april 2005 @ 22:01
quote:
Op dinsdag 26 april 2005 21:49 schreef H4ze het volgende:
Ik zat zelf te denken aan het boekje PHP/mySQL voor Dummies (die ook in de openingspost staat), maar dan heb ik er ook gelijk weer mySQL bij...of is dit juist wel handig?
Hoewel ik zelf PHP heb geleerd (en nog steeds leer) via tutorials en het doorlezen van dit soort topics, denk ik dat een boek ook best handig is.

Ik weet niet of PHP/MYSQL voor Dummies een goed boek is, maar het is wel handig om er gelijk Mysql bij te leren. Hoewel PHP in principe losstaat van mysql, zul je in de praktijk redelijk vaak een database achter een site hangen. Dus als je Mysql nog niet zo goed doorhebt, zou ik wel een combiboek nemen met zowel PHP en mysql (of twee aparte natuurlijk, dat kan ook).
the_disheaverdinsdag 26 april 2005 @ 22:42
FF een SQL-vraagje...

ik wil uit een db alle ip-adressen die er meerdere keren in staan. Dus alle unieke ip-adressen (die maar 1 keer in tabel staan) er uit filteren... Iemand de oplossing?

dank.
Tokusdinsdag 26 april 2005 @ 22:45
select ip, count(*)
from ipadressen
group by ip
having count(*) > 1
sv3ndinsdag 26 april 2005 @ 22:46
select * from ? group by ipadres having count (iets van de datum ofzo) =1

ik denk dat dat wel moet gaan werken
ikke_ookdinsdag 26 april 2005 @ 22:54
Ik had laatst ook zoiets, en volgens mij moet je dat dan met een AS doen..
dus SELECT count(*) AS aantal FROM table GROUP BY ip HAVING aantal > 1
sv3ndinsdag 26 april 2005 @ 22:59
as is niks anders dan bijv. een count of een tabel tijdelijk een andere naam geven, is alleen maar voor de duidelijkheid van je querie en heeft niks te doe met de structuur van de querie op zich
ikke_ookdinsdag 26 april 2005 @ 23:19
Het was een iets andere query zie ik nu
werkt niet :
1
2
SELECT ip,count(ip) FROM visits GROUP BY ip HAVING count(ip)>3 
ORDER BY count(ip)

werkt wel :
1
2
SELECT ip,count(ip) AS aantal FROM visits GROUP BY ip HAVING count(ip)>3
 ORDER BY aantal


[ Bericht 4% gewijzigd door ikke_ook op 26-04-2005 23:25:51 ]
the_disheaverwoensdag 27 april 2005 @ 10:07
Dank, het werkt!
BaggerUserwoensdag 27 april 2005 @ 14:28
quote:
Op dinsdag 26 april 2005 16:16 schreef BaggerUser het volgende:
hey, ik wil mn php updaten maar is het ook mogelijk dat ik al mn instellingen hou of niet?..

heb deze installatie namelijk zo'n jaar draaien nu en wil graag php upgraden (heb nu 4.2.2 )
maar wil wel dat alle instelingen hetzelfde blijven etc anders gaan al mn scripts niet meer werken
en ik zou niet meer precies weten wat ik allemala veranderd heb... is dit mogelijk
iemand?..
SuperRembowoensdag 27 april 2005 @ 16:48
quote:
Op woensdag 27 april 2005 14:28 schreef BaggerUser het volgende:

[..]

iemand?..
Gewoon ff de ouwe php.ini vergelijken met de nieuwe (recommended) php.ini. Met de meeste texteditors kan dat wel. Desnoods in dos met "comp old.ini new.ini".
BaggerUserdonderdag 28 april 2005 @ 14:46
ik dus vandaag php 4.3.11 download en installeren
server opnieuw oppstarten.. kijk ik bij php info staat er nog steeds doodleuk php 4.2.2
de oude php staat in /php
de nieuwe in /php4

ik dus in de httpd.conf kijken daar staat 1 regel in met /php i kdaar /php4 van maken. kan ik de server niet opstarten dus maar wer terug gezet in de php.ini alles in /php4 veranderd dat veranderd opzich niet veel.. waar moet ik nogmeer de map verranderen iemand enig idee
SuperRembodonderdag 28 april 2005 @ 15:41
Zet de ouwe versie in /php4.2.2 en de nieuwe in /php
Windows of *nix?
ikke_ookdonderdag 28 april 2005 @ 15:53
Waar is je weerbericht heen SuperRembo Ik vond dat wel handig eigenlijk
SuperRembodonderdag 28 april 2005 @ 18:04
quote:
Op donderdag 28 april 2005 15:53 schreef ikke_ook het volgende:
Waar is je weerbericht heen SuperRembo Ik vond dat wel handig eigenlijk


Die staat nog steeds op dezelfde plek hoor maar bannertjes maken is ook leuk

De ForecastFox extension is veel handiger.
the_disheaverdonderdag 28 april 2005 @ 19:51
quote:
Op donderdag 28 april 2005 18:04 schreef SuperRembo het volgende:

De ForecastFox extension is veel handiger.
Niet voor opera
Kapt.Ruigbaarddonderdag 28 april 2005 @ 19:58
quote:
Op maandag 25 april 2005 22:04 schreef H4ze het volgende:
Om te beginnen wil ik ff zeggen dat ik een aardige PHPnoob ben, maar daarom bevind ik me atm ook in dit topic

Ik ben bezig om een "aanbod-formulier" in php te maken. Hieronder een screenie van wat ik nu heb:

[afbeelding]

Als alles is ingevuld wordt er een mailtje met de gegevens naar de beheerder gestuurd, en een bevestigings emailtje naar degene die de gegevens heeft ingevuld. Tot zover werkt 't allemaal, en dit was ook best simpel om te maken.

Maar...de user moet natuurlijk wel meerdere spellen kunnen submitten die hij/zij wil verkopen. Ik wil dus nog een knop "voeg nog een spel toe" erbij hebben. Als hier op wordt geklikt moet er een scherm komen met alleen het volgende:

[afbeelding]

Hierna moet de user natuurlijk nog een spel kunnen toevoegen, en nog 1, en...etc etc etc. Als hij/zij klaar is, dan kan er op de "verzend" knop gedrukt worden, en wordt er alsnog een mailtje met alle gegevens naar de beheerder gestuurd, en een bevestigings emailtje naar degene die de gegevens heeft ingevuld.

Hoe pak ik dit aan? Ik hoop dat er hier iemand is die me wat aanwijzingen kan geven/in de goede richting kan helpen. Ik kom er zelf namelijk gewoon niet uit.

BVD!
Kan je niet alles in een sessie proppen?
Wanneer er dan iets geselecteerd word stop je dat in een sessie en laat je de pagina refreshen met de informatie die op dat moment in je sessie staat.
BaggerUserdonderdag 28 april 2005 @ 20:19
quote:
Op donderdag 28 april 2005 15:41 schreef SuperRembo het volgende:
Zet de ouwe versie in /php4.2.2 en de nieuwe in /php
Windows of *nix?
windows

zometeen even proberen om de mappen te wisselen
BaggerUserdonderdag 28 april 2005 @ 20:20
quote:
Op donderdag 28 april 2005 18:04 schreef SuperRembo het volgende:

[..]

[afbeelding]

Die staat nog steeds op dezelfde plek hoor maar bannertjes maken is ook leuk

De ForecastFox extension is veel handiger.
hey vet plaatje
waar haal je die info vandaan ?
BaggerUserdonderdag 28 april 2005 @ 20:24
mappen wisselen helpt niet..
dan kan ik de server niet meer aanzetten
SuperRembodonderdag 28 april 2005 @ 20:33
quote:
Op donderdag 28 april 2005 20:20 schreef BaggerUser het volgende:

[..]

hey vet plaatje
waar haal je die info vandaan ?
De data komt van xoap.weather.com. Voor de details moet je die ForecastFox extension maar uitpluizen
Roonaanvrijdag 29 april 2005 @ 00:05
quote:
Op donderdag 28 april 2005 20:24 schreef BaggerUser het volgende:
mappen wisselen helpt niet..
dan kan ik de server niet meer aanzetten
Probeer anders eens om appserv 2.4.2 te installeren.
SpeedyGJvrijdag 29 april 2005 @ 17:48
Hey mensen.
Ik heb net een forum op mijn website gegooid (nog niet berijkbaar) maar dan ZONDER MYSQOL.
Want die moet ik nog apart bestellen maar nu geen geld meer voor.
Nu heb ik em op i-net maar er staat eerst dat ik moet CHMOD(en)
Moet die ook 777 rechten geven
How the fuck doe ik dat inhemelsnaam.
Ik gebruik WS FTP maar daar vond ik niks.
Nu heb ik Cuteftp, daar zie ik wel CHMOD staan maar doet geen ene fuck, laat alleen maar de properties zien
Wat moet ik nu doen want ik moet me eerst registreren maar dat pakt ie dus niet

Of weet iemand een andere oplossing zodat ik wel MYSQL forum kan draaien.
Roonaanvrijdag 29 april 2005 @ 17:50
wsftp moet je de file/map aanklikken met rechter muisknop en dan staat er gewoon chmod tussen.

777 betekend dat je alle vinkjes aan moet klikken.
DionysuZvrijdag 29 april 2005 @ 17:52
welke properties laat ie zien? Als je Owner, Group en de rechten van de rest op Read/Write/Execute zet (dus alles aan), dan heb je 777.
SpeedyGJvrijdag 29 april 2005 @ 18:01
Thnx
Zal eens proberen
SpeedyGJvrijdag 29 april 2005 @ 18:06
Oke dat is gelukt maar ik kan me nog steeds niet registreren
Weet niet of dat bij jullie ook het geval is.

Forum
Vind het trouwens ook maar een vage forum maar ok is niet erg.
DionysuZvrijdag 29 april 2005 @ 18:17
als het forum gebruik maakt van een database, en die heb je nog niet, dan kan je ook niet registreren, topics plaatsen, reageren etc. omdat hij daarvoor velden in de database moet aanmaken, die er niet is.
SuperRembovrijdag 29 april 2005 @ 18:26
quote:
Op vrijdag 29 april 2005 18:17 schreef DionysuZ het volgende:
als het forum gebruik maakt van een database, en die heb je nog niet, dan kan je ook niet registreren, topics plaatsen, reageren etc. omdat hij daarvoor velden in de database moet aanmaken, die er niet is.
quote:
Navboard is a php based web forum using text files to store data instead of using a database, compatible with any server running php 4.0 or higher, all the features of most major forum software and no installation needed.
SpeedyGJvrijdag 29 april 2005 @ 18:30
Aha oke.
Ik heb ook nog een beter forum gevonden

Hier moet ik dus alles invullen.
Alleen hier kom ik niet echt uit
SuperRembovrijdag 29 april 2005 @ 18:45
Heb je wel SQLite support?
SpeedyGJvrijdag 29 april 2005 @ 18:51
Ondersteuning van ASP/PHP4/Perl
Ondersteuning ASP.NET!


Denk het niet.
http://www.vevida.nl
Hier host ik mijn site op.
R-Monvrijdag 29 april 2005 @ 18:53
quote:
Op vrijdag 29 april 2005 18:51 schreef SpeedyGJ het volgende:
Ondersteuning van ASP/PHP4/Perl
Ondersteuning ASP.NET!


Denk het niet.
http://www.vevida.nl
Hier host ik mijn site op.
Je zegt net dat je geen database hebt. PunBB heeft er wel een nodig. (btw, PunBB )
SpeedyGJvrijdag 29 april 2005 @ 18:56
Aha oke
Dan ga ik die toch maar even bij bestellen.
Dan kan ik ook wel PHPBB instaleren
blablablablavrijdag 29 april 2005 @ 22:38
Je ziet wel is dat er op website's als je op een link klikt er geen http:/site.com/foto.php komt te staan maar bijvoorbeeld: http://site.com/index.php?foto
Hoe maak ik dit
DutchBloodvrijdag 29 april 2005 @ 23:03
quote:
Op vrijdag 29 april 2005 22:38 schreef blablablabla het volgende:
Je ziet wel is dat er op website's als je op een link klikt er geen http:/site.com/foto.php komt te staan maar bijvoorbeeld: http://site.com/index.php?foto
Hoe maak ik dit
Bedoel je niet http://site.com/index.php?i=foto

Waar i dus praktisch alles kan zijn.
blablablablavrijdag 29 april 2005 @ 23:24
quote:
Op vrijdag 29 april 2005 23:03 schreef DutchBlood het volgende:

[..]

Bedoel je niet http://site.com/index.php?i=foto

Waar i dus praktisch alles kan zijn.
Dat ja
Hoe het zoiets?
ikke_ookvrijdag 29 april 2005 @ 23:29
dat heet iets van globals/GET variabele ofzo.
Als je dit : http://site.com/index.php?i=foto doet dan heeft in index.php de variabele $_GET['i'] de waarde foto.
Snappie?
the_disheaverzaterdag 30 april 2005 @ 00:46
bv:
1
2
3
4
5
6
7
8
9
<?php
if ($_GET['i'] == foto) {
//Hier de inhoud voor de foto-pagina
} elseif ($_GET['i'] == nieuws) {
//hier dus de inhoud voor nieuws
} else {
//hier bijvoorbeeld de standaard-pagina
}
?>


Overigens, kan http://site.com/index.php?foto niet ook wel met if (ifset($_GET['foto'])) ?

Niet dat het zoveel uit maakt...
SHERMANzaterdag 30 april 2005 @ 10:17
De links noem je zo:
1?do=foto


Op de plek waar de inhoud van de nieuwe link moet komen doe je:
1
2
3
4
5
6
7
8
9
<?php
if($do == "search" or $dosearch == "yes"){ $subaction = "search"; $dosearch = "yes"; include("cutenews/search.php"); }
elseif(
$do == "archives"){ include("cutenews/show_archives.php"); }
elseif(
$do == "stats"){ include("cutenews/stats.php"); }
elseif(
$do == "foto"){ include("foto.php"); }
elseif(
$do == "about"){ include("about.php"); }
elseif(
$do == "test"){ include("test.php"); }
else{ include(
"cutenews/show_news.php"); }
?>


de laatste regel is de content die moet worden geladen als er niks van ?do= achter de link staat.

Bron: http://cutephp.com
Xiqumzaterdag 30 april 2005 @ 11:30
Ik heb een vraagje.

Ik gebruik include's voor het invoegen van me content hierover word een smiley replacer gehaalt zodat de : P e.d er ook echt als komen uit te zien. Nou had ik altijd een include waarbij je als er geen pagina is toegewezen dus niet ?p=pagina1 is dat hij dan automatisch ?p=home doet. Het oude stukje script:
1<? if(!$p){ $p="home"; }include("pgs/" . $p . ".php"); ?>


Alleen nu heb ik dus een andere manier van de pagina's includen namelijk:
1
2
3
4
5
6
7
8
9
10
<?
$adres = "http://xiqum.net/a/pgs/".$p.".php"; //Het adres wat geopent moet worden
$openen = fopen("$adres", "r"); //Het adres openen met fopen
$page = fread($openen, 200000); //Het adres lezen met fread en gelijk 
in een variabele doen
fclose($openen); //Altijd sluiten wat je geopent hebt
$page = smiley($page); //Functie toepassen op je variabele met
je geopende adres erin
echo "$page"
?>


Maar deze opent niet automatisch ?p=home zodat je eerst een error krijgt als je de index.php inlaad. Misschien iets heel simpel maar zou iemand er even naar willen kijken, dan kan ik weer verder.
Roonaanzaterdag 30 april 2005 @ 11:35
1
2
3
4
5
6
7
8
<?
$p = empty($p) ? 'home' : $p;
$p = preg_replace('/[\w]/','',$p);// voorkomen dat er andere tekens dan a-z0-9 en underscore in p zitten.
$adres = "http://xiqum.net/a/pgs/".$p.".php"; //Het adres wat geopent moet worden
$page = file_get_contents($adres);
$page = smiley($page); //Functie toepassen op je variabele met
echo $page;
?>
Xiqumzaterdag 30 april 2005 @ 11:41
Ik krijg nu de volgende error:
1
2
Warning: file_get_contents(http://xiqum.net/a/pgs/.php): failed to open stream: HTTP request failed! 
HTTP/1.1 404 Not Found in /usr/local/psa/home/vhosts/xiqum.net/httpdocs/a/index.php on line 102


Als ik $adres = "http://xiqum.net/a/pgs/".$p.".php"; vervang door $adres = "http://xiqum.net/a/pgs/".home.".php";

Dan laadt hij gewoon netjes de home.php pagina in de dir pgs in alleen is dat niet de bedoeling.


Opgelost

Als ik de onderstaande regel verwijder doet hij het perfect!
1$p = preg_replace('/[\w]/','',$p);


Hartelijk bedankt!

[ Bericht 11% gewijzigd door Xiqum op 30-04-2005 11:51:37 ]
MrSubtlezaterdag 30 april 2005 @ 14:08
Help oh groten PHP experts . Ben net vers in PHP dus het kan zijn dat ik totaal op de verkeerde weg zit, maar hier komt ie:

Ik lees in een while loop een table uit. Weet niet vooraf hoeveel waarden er zullen komen. Voor iedere row in de table maak ik een checkbox en een dropdownlist. Onchange van de dropdownlist wordt de checkbox op true gezet zodat ik mooi kan bijhouden welke dropdowns zijn gewijzigd. De checkboxen maak ik op de volgende manier:

1
2
3
<?php
  
print ("<input disabled type=\"checkbox\" name=\"checkbox$row->layout\">");
?>


Nu heb ik onderaan mijn formpje een submit. Wanneer je hier op klikt wil ik in een loop door alle checkboxen heenlopen, kijken welke true staan, en alleen die bijbehorende dropdownlists uitlezen. Wat ik dus zou willen is een mechanisme als volgt (even in pseudocode):

1
2
3
4
5
6
7
8
9
<?php
  
for ($count = 0; $count &lt;= $reccount; $count = $count + 1)
  {
    if (
$checkbox + $count = aangevinkt)
    {
      print(
"bingo");
    }
}
?>


Nu is dit duidelijk not the way... maar hoe dan wel? Ik heb geprobeerd te zoeken op google en in mijn php boek maar dat wil niet helpen, voornamelijk omdat ik niet goed weet waar ik op moet zoeken. Help!
sir_Tachyonzaterdag 30 april 2005 @ 14:14
Hai,

Ik heb net een site in de lucht gegooid met een (bestaand) gastenboek gemaakt in PHP. Thuis heb ik Apache draaien met PHP4 en die werkt prima maar online doet ie het niet. Ik zit bij budgetwebhosting.nl met CPANEL.
Ik krijg de volgende foutmelding
quote:
Warning: main(): Failed opening 'language/language.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/dustinde/public_html/list.php on line 5
Kent een van jullie het probleem en heb je er een oplossing voor???
DionysuZzaterdag 30 april 2005 @ 14:16
je hebt waarschijnlijk een niet-bestaand bestand proberen te includen. language/language.php bestaat niet, en dan krijg je een dergelijke foutmelding
DionysuZzaterdag 30 april 2005 @ 14:28
quote:
Op zaterdag 30 april 2005 14:08 schreef MrSubtle het volgende:
Help oh groten PHP experts . Ben net vers in PHP dus het kan zijn dat ik totaal op de verkeerde weg zit, maar hier komt ie:

Ik lees in een while loop een table uit. Weet niet vooraf hoeveel waarden er zullen komen. Voor iedere row in de table maak ik een checkbox en een dropdownlist. Onchange van de dropdownlist wordt de checkbox op true gezet zodat ik mooi kan bijhouden welke dropdowns zijn gewijzigd. De checkboxen maak ik op de volgende manier:
[ code verwijderd ]

Nu heb ik onderaan mijn formpje een submit. Wanneer je hier op klikt wil ik in een loop door alle checkboxen heenlopen, kijken welke true staan, en alleen die bijbehorende dropdownlists uitlezen. Wat ik dus zou willen is een mechanisme als volgt (even in pseudocode):
[ code verwijderd ]

Nu is dit duidelijk not the way... maar hoe dan wel? Ik heb geprobeerd te zoeken op google en in mijn php boek maar dat wil niet helpen, voornamelijk omdat ik niet goed weet waar ik op moet zoeken. Help!
je hebt dus als ik het goed begrijp een pagina met een code waarin een bepaalde hoeveelheid checkboxen worden gegenereerd?

1
2
3
4
5
6
7
8
9
10
<form method=post action=test.php>
  <input disabled type=checkbox name=checkbox1>
  <input disabled type=checkbox name=checkbox2>
  <input disabled type=checkbox name=checkbox3>
  <input disabled type=checkbox name=checkbox4>
  <input disabled type=checkbox name=checkbox5>
  <input disabled type=checkbox name=checkbox6>
  ...
  <input type=submit value="submit">
</form>

Die kun je als volgt uitlezen:
1
2
3
4
5
6
7
<?
  foreach($_POST as $key=>$val) {
    if ((substr($key,0,8) == "checkbox") && ($val == "on")) {
      echo $key." is checked";
   }
  }
?>

probleem is denk ik wel die Disabled. Volgens mij wordt er dan nix doorgepast, maar dat kan ik mis hebben
DionysuZzaterdag 30 april 2005 @ 14:36
je kunt overigens beter gebruik maken van <input type=hidden> ipv checkbox om bij te houden of iets gewijzigd wordt.
MrSubtlezaterdag 30 april 2005 @ 14:47
DionysuZ: Je bent geniaal

Ik was inmiddels al naar type hidden gegaan idd. Thanks voor de hulp!
DutchBloodzaterdag 30 april 2005 @ 16:11
Let wel dat deze code niet helemaal (X)HTML valid is.

XHTML valid ziet het er als volgt uit:
1
2
3
4
5
6
7
8
<form method="post" action="test.php">
  
  <input disabled="disabled" type="checkbox" name="checkbox2" />
  

  ...
  <input name="submitknop" type="submit" value="submit" />
</form>
DionysuZzaterdag 30 april 2005 @ 17:04
wat zijn de voordelen van je pagina xhtml complient te maken? ik maak mijn pagina's altijd HTML 4.01 Transitional, wat is het verschil tussen html 4.0 en xhtml 1.0?
SuperRembozaterdag 30 april 2005 @ 18:51
De verschillen staan bij w3c uitgelegd: http://www.w3.org/TR/xhtml1/#issues .

De voordelen zie ik eigenlijk ook niet zo. Pagina's die ik zelf onderhoud maak ik HTML 4.01 Strict.
DutchBloodzondag 1 mei 2005 @ 10:58
quote:
Op zaterdag 30 april 2005 17:04 schreef DionysuZ het volgende:
wat zijn de voordelen van je pagina xhtml complient te maken? ik maak mijn pagina's altijd HTML 4.01 Transitional, wat is het verschil tussen html 4.0 en xhtml 1.0?
Maar ok bij HTML 4.01 horen niet integere waardes tussen quotes, dus dat maakt dit niet HTML valid:
1
2
3
4
5
6
7
8
9
10
<form method=post action=test.php>
  <input disabled type=checkbox name=checkbox1>
  <input disabled type=checkbox name=checkbox2>
  <input disabled type=checkbox name=checkbox3>
  <input disabled type=checkbox name=checkbox4>
  <input disabled type=checkbox name=checkbox5>
  <input disabled type=checkbox name=checkbox6>
  ...
  <input type=submit value="submit">
</form>
Keksizondag 1 mei 2005 @ 16:09
Hoi,

Ik wil dat áls ik een bestelling selecteer uit een lijst mijn frame met de naam 'content' verspringt naar een bestand: show_details.php met alleen die ene geselecteerde bestelling.

1
2
3
4
5
6
7
echo "<form action=show_details.php target=content>";

echo "<tr>Kies een bestelling</tr>";
echo "<td><select name=Selectperiod size=1 onChange=this.form.submit()>";
echo "<option value=$BestellingID>$BestellingID - $Datumaflevering</option>"
echo "</select></tr>";
echo "</form>";


Dus hoe krijg ik het voor elkaar dat die ene bestelling met een query uit de database wordt gehaald?

Edit: misschien nog wel betere vraag: hoe krijg ik de $_Get['Bestelling'] variabele in een normale $huphup en hoe krijg ik die $huphup als parameter in mijn SQL functie?

Edit2: volgens mij gaat het wel goed maar ik krijg steeds dat de gegevenstypen niet compatibel zijn. Beetje naat... hoe kan ik zeker weten dat de $_Get een integer is? Want in de db is ie wel een integer. De output is "3" of een ander getal. Het lijk me dat het mogelijk moet zijn omdat in een SQL query te vergelijken met een andere numerieke waarde....

Alvast bedankt,

[ Bericht 11% gewijzigd door Keksi op 01-05-2005 17:19:41 ]
SuperRembozondag 1 mei 2005 @ 18:32
Wat is nou het probleem? Werkt het form niet, kan je de parameter niet uitlezen, klopt de query niet of lukt het verwerken van de query-resultaten niet?

Debuggen van php is niet zo moeilijk. Doe eens var_dump($_GET) of var_dump($sql) om inzicht te krijgen wat je script nou precies doet.

Verder zijn frames eigenlijk alleen maar lastig, zeker als je serverside scripting gebruikt. En een selectbox die onchange een form submit werkt klote als je zonder muis werkt.
SpeedyGJmaandag 2 mei 2005 @ 18:29
Hey mensen.
Ik heb zojuist MYSQL
Nu heb ik een probleem.
Als ik install doe en alle stappen volg dan gaat het goed.
Maar als ik verder wil gaan vertikt ie dat!
Hij gaat gewoon terug naar die install verder kom ik niet
Wat moet ik doen?
Roonaanmaandag 2 mei 2005 @ 18:32
quote:
Op maandag 2 mei 2005 18:29 schreef SpeedyGJ het volgende:
Hey mensen.
Ik heb zojuist MYSQL
Nu heb ik een probleem.
Als ik install doe en alle stappen volg dan gaat het goed.
Maar als ik verder wil gaan vertikt ie dat!
Hij gaat gewoon terug naar die install verder kom ik niet
Wat moet ik doen?
Que?
SpeedyGJmaandag 2 mei 2005 @ 18:33
quote:
Op maandag 2 mei 2005 18:32 schreef Roönaän het volgende:

[..]

Que?
Wat
Ben geen held in PHP
Roonaanmaandag 2 mei 2005 @ 18:35
quote:
Op maandag 2 mei 2005 18:33 schreef SpeedyGJ het volgende:

[..]

Wat
Ben geen held in PHP
Je hebt op mysql.com mysql gedownload en geinstalleerd en als je nu mysql start krijg je de install opnieuw?

Of heb je een php pakket waarbij ook mysql wordt geinstalleerd en dat gaat niet goed oid?

-r-
SpeedyGJmaandag 2 mei 2005 @ 18:39
quote:
Op maandag 2 mei 2005 18:35 schreef Roönaän het volgende:

[..]

Je hebt op mysql.com mysql gedownload en geinstalleerd en als je nu mysql start krijg je de install opnieuw?

Of heb je een php pakket waarbij ook mysql wordt geinstalleerd en dat gaat niet goed oid?

-r-
Ik wil gebruik maken van: PHPBB
Roonaanmaandag 2 mei 2005 @ 18:40
quote:
Op maandag 2 mei 2005 18:39 schreef SpeedyGJ het volgende:

[..]

Ik wil gebruik maken van: PHPBB
Dan kan ik je niet verder helpen
SpeedyGJmaandag 2 mei 2005 @ 18:41
Aha oke.
Geeft niet
Godtjemaandag 2 mei 2005 @ 18:55
Je vraag is me nog niet duidelijk!
PHP draaid?
MYSql draaid?
SpeedyGJmaandag 2 mei 2005 @ 18:57
quote:
Op maandag 2 mei 2005 18:55 schreef Godlike02 het volgende:
Je vraag is me nog niet duidelijk!
PHP draaid?
MYSql draaid?
Oke:
1: Alles geupload.
2: Install opgestart gegevens ingevult en al.
Dan krijg ik een melding dat ik nog iets moet doen en dan in de instalatie afgerond.
Maar als ik verder wil gaan in het forum zelf dan krijg ik weer die install voor me.
markiemarkmaandag 2 mei 2005 @ 19:38
Klein probleempje, misschien dat iemand me ff kan helpen...
quote:
getimagesize(http://xx.xx.xx.xx/imagemanager/images/fotootje.jpg): failed to open stream: Bad file descriptor in C:\web\files\nieuws_beheren.php on line 54

Warning: Division by zero in C:\web\files\nieuws_beheren.php on line 56
wordt veroorzaakt door:

1
2
3
4
5
6
7
8
9
10
11
12
13
$afbeelding = str_replace(" ", "%20", $row->nws_afbeelding);
list($width, $height) = getimagesize($afbeelding);
$prop = $height / $width;
if ($prop <= 1)
   {
      $nwidth = 120;
      $nheight = 120 * $prop;
   }
else
   {
      $nwidth = 90;
      $nheight = 90 * $prop;
   }


wat is de fout? en hoe haal ik deze er uit?
ikke_ookmaandag 2 mei 2005 @ 19:38
Hebben jullie niet op school gezet?
quote:
PHP draaid
quote:
MYSql draaid
quote:
Install opgestart gegevens ingevult en al.
quote:
Dan krijg ik een melding dat ik nog iets moet doen en dan in de installatie afgerond.
sorry voor de offtopic reactie.
ikke_ookmaandag 2 mei 2005 @ 19:42
quote:
Op maandag 2 mei 2005 19:38 schreef markiemark het volgende:
Klein probleempje, misschien dat iemand me ff kan helpen...
[..]

wordt veroorzaakt door:
[ code verwijderd ]

wat is de fout? en hoe haal ik deze er uit?
De file waarvan je de afmeting wil bepalen bestaat niet
Die spaties vervangen door %20.. is dat nodig?heb je t al zonder die functie geprobeerd?
* ikke_ook heeft nog nooit gewerkt met file locaties met een spatie erin icm php

Je zou s kunnen kijken wat er in $afbeelding staat, of dat ook echt is wat je denkt dat erin staat.
markiemarkmaandag 2 mei 2005 @ 19:59
quote:
Op maandag 2 mei 2005 19:42 schreef ikke_ook het volgende:

[..]

De file waarvan je de afmeting wil bepalen bestaat niet
Die spaties vervangen door %20.. is dat nodig?heb je t al zonder die functie geprobeerd?
* ikke_ook heeft nog nooit gewerkt met file locaties met een spatie erin icm php

Je zou s kunnen kijken wat er in $afbeelding staat, of dat ook echt is wat je denkt dat erin staat.
lol heb het al opgelost... ik heb die site op mn webserver draaien, en iemand anders had de cms gebruikt zodat mn ip als src kwam te staan ipv webserver of localhost.. probleem opgelost dus... er is geen probleem