dank, maar ik krijg hem niet werkend.quote:Op zondag 22 oktober 2006 13:51 schreef ralfie het volgende:
Als je de e modifier gebruikt ($pattern[0]='$blablabla$e') kun je van replacement een php statement maken, zoals
[ code verwijderd ]
1 |
ja, die klote forumbug weer, dit werkt wel:quote:Op zondag 22 oktober 2006 15:36 schreef the_disheaver het volgende:
[..]
dank, maar ik krijg hem niet werkend.
enkel syntax error's...
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 | $txt="<strong>Here are some urls</strong><br/> <a href=\"http://www.test.nl/index.php?id=1\">http://www.test.nl/index.php?id=1</a><br/> <a href=\"http://www.test.nl/index.php?id=2\">http://www.test.nl/index.php?id=2</a><br/> <a href=\"http://www.test.nl/index.php?id=3\">http://www.test.nl/index.php?id=3</a><br/> <a href=\"http://www.test.nl/index.php?id=4\">http://www.test.nl/index.php?id=4</a><br/> <a href=\"http://www.test.nl/index.php?id=5\">http://www.test.nl/index.php?id=5</a><br/> <a href=\"http://www.test.nl/index.php?id=6\">http://www.test.nl/index.php?id=6</a><br/> "; $pattern='$>http://www.test.nl/index\.php\?id=(d+)$e'; echo preg_replace( $pattern, "in_array(\\1,\$is_article)?'>link to article':'>link to something else'",$txt); |
hendigste is om een tabel te maken waarin je de $_SESSION array gewoon serialised en unserialised. Enige wat je moet doen is is dan met een cookie en/of ip bepalen of de huidige gebruiker al een sessie in je database heeft staan en als dat zo is deze eruit halenquote:Op maandag 23 oktober 2006 12:27 schreef Nevermind het volgende:
Ik maak gebruik van sessies om users te kunnen laten inloggen. Hoe kan ik die sessiewaarden opslaan in de database en een 'stay logged in' functie maken? Links naar goede tutorials zijn ook welkom.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | //get database session if (!isset($_SESSION['controle']) && isset($_COOKIE['sessionhash'])) { $res=mysql_query("SELECT sessie from sessions_table WHERE sessionhash='".mysql_real_escape($_COOKIE['sessionhash'])."' LIMIT 1"); $x=mysql_fetch_assoc($res); $_SESSION=unserialise($x['sessie']); $_SESSION['controle']=true;//om ervoor te zorgen dat een al bestaande sessie niet vervangen wordt door die uit de db } //create new database entry $u=md5($username.$password); $s=serialise($_SESSION); mysql_query("INSERT INTO sessions_table (sessionhash,sessie) values('{$u}','{$s}')"); $_COOKIE['sessionhash']=$u; ?> |
Zoals eerder gezegd werkt $_POST met die versie inderdaad nog niet. $_POST is pas beschikbaar vanaf 4.1.0. Dus ik zou inderdaad maar eerst even wat updates uitvoerenquote:Op donderdag 21 september 2006 22:09 schreef Rumboon het volgende:
Ben pas begonnen met PHP en loop nu onverklaarbaar vast.
Versies:
Apache/1.3.19
PHP Version 4.0.4pl1
Files:
newcustomer.html
[ code verwijderd ]
process_newcustomer.php
[ code verwijderd ]
Als ik de html pagina draai krijg ik vervolgens te zien:
Welcome new customer! You have entered the following information:
Full Name:
User Name:
Verder niets! Hoe kan dit?????
In dat geval zou het kunnen zijn dat register_globals nog aan staat, dus als je het eerste stuk code weglaat (waar je de variabelen defineert), zou het zomaar kunnen dat het wel werkt.quote:Op donderdag 26 oktober 2006 16:49 schreef Giel83 het volgende:
[..]
Zoals eerder gezegd werkt $_POST met die versie inderdaad nog niet. $_POST is pas beschikbaar vanaf 4.1.0. Dus ik zou inderdaad maar eerst even wat updates uitvoeren
1 |
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 | session_start(); include("config/mysql.php"); include("config/util.php"); if(isset($_POST['gebruiker']) && isset($_POST['wachtwoord'])) { $_POST['gebruiker'] = make_safe($_POST['gebruiker']); $_POST['wachtwoord'] = make_safe($_POST['wachtwoord']); $result = mysql_query("SELECT * FROM gebruiker WHERE username='".$_POST['gebruiker']."' AND hash=PASSWORD('".$_POST['wachtwoord']."')" ) or die(mysql_error()); if(mysql_num_rows($result) == 1) { $regel = mysql_fetch_array($result); $_SESSION['username'] = $regel['username']; $_SESSION['voornaam'] = $regel['voornaam']; $_SESSION['achternaam'] = $regel['achternaam']; $_SESSION['level'] = $regel['ulevel']; $inhoud="Ingelogd!"; } else { // Foute login $inhoud="Foute login!"; } } else { $inhoud = '<form name="loginform" method="post"> Gebruikersnaam: <input type="text" name="gebruiker"><br> Wachtwoord: <input type="password" name="wachtwoord"><br> <input type="submit" value="Login" name="submit"> </form>'; } ?> <?php echo $inhoud; echo $regel['username']; ?> |
Is toch ook wel logisch, of zie ik het verkeerdquote:Op donderdag 26 oktober 2006 19:32 schreef Xevor het volgende:
Ik ben nu bezig met een scriptje te schrijven, maar ik kom er maar niet uit. Hopelijk kan hier iemand helpen.
Ik heb een login script dat gegevens uit mysql haalt en daarvan een sessie maakt. Het probleem is dat de sessie niet wordt onthouden. Als ik namelijk weer naar login.php ga dan kan ik weer inloggen en dat wil ik op dat moment niet want ik hoor al ingelogd te zijn. Sessie wordt opgeslagen zodra ik inlog maar als ik dan login.php weer open of naar een andere pagina ga is die alweer verwijderd.
[ code verwijderd ]
Iemand die kan helpen?
1 2 3 4 5 6 7 8 9 10 11 12 | //variabelen $zoek_klantnaam = $_POST['zoek_klantnaam']; $zoek_postcode = $_POST['zoek_postcode']; $zoek_klantnummer = $_POST['zoek_klantnummer']; //query $query = "SELECT * FROM Klant WHERE Klantnaam LIKE '%$zoek_klantnaam%' OR Postcode = '$zoek_postcode' OR Klantnummer = '$zoek_klantnummer'"; $result = mysql_query($query) or die ("Kan opdracht niet uitvoeren"); ?> |
Als in $zoek_klantnaam niets in staat, gebruik je eigenlijk de query "SELECT * FROM Klant WHERE Klantnaam LIKE '%%' OR Postcode = '$zoek_postcode' OR Klantnummer = '$zoek_klantnummer'". Hij vindt dan dus gewoon alles.quote:Op vrijdag 27 oktober 2006 09:27 schreef Xtr3mE het volgende:
Kan iemand mij uitleggen waarom de onderstaande code niet werkt? zie ik wat over het hoofd?
[ code verwijderd ]
Ik heb dus 3 zoekvelden waar je op kan zoeken:
- Postcode
- Klantnummer
- Klantnaam
* Ze hoeven niet allemaal ingevuld te worden.
* de postcode en klantnummer moeten precies ingevuld overeen komen
* klantnaam mag beetje afwijken (vandaar die LIKE)
en onder de pagina komt een overzicht van de zoekresultaten.
Nu werkt dus alleen als je zoekt op Klantnaam. Als je zoekt op postcode of klantnummer dan worden alle resultaten getoont ookal vul je een niet bestaande nummer of postcode in.
![]()
-edit- het werkt wel als ik die LIKE van de klantnaam weghaal maar die moet juist LIKE zijn omdat er meerdere resulaten getoond moeten worden. (klantnaam is ook geen unieke waarde, de postcode en klantnummer wel)
enig idee hoe ik dat zou kunnen opvangen ?quote:Op vrijdag 27 oktober 2006 10:19 schreef freiss het volgende:
[..]
Als in $zoek_klantnaam niets in staat, gebruik je eigenlijk de query "SELECT * FROM Klant WHERE Klantnaam LIKE '%%' OR Postcode = '$zoek_postcode' OR Klantnummer = '$zoek_klantnummer'". Hij vindt dan dus gewoon alles.
1 2 3 4 5 6 | $query='SELECT * FROM Klant WHERE'; if (isset($klantnaam)) $query.=" Klantnaam LIKE %$klantnaam%'"; else if (isset($pc)) $query.=" Postcode = '$pc'"; else if (isset($kn)) $query.=" Klantnummer = '$kn'"; ?> |
Er is een makkelijkere manier (zoek naar extract()) maar de betere manier is om het via $_GET, $_POST etc te doenquote:Op vrijdag 27 oktober 2006 12:55 schreef wonderer het volgende:
Mijn host heeft PHP gerecompiled (wat een lekker nederlands toch weer) en nu kan ik variabelen alleen nog maar aanroepen met $_GET["variable"] in plaats van $variable. Dit deed ik al voor POST, maar nooit met GET gedaan, eigenlijk... moet ik nu alle scripts door gaan lopen en aan gaan passen, of is daar een makkelijkere manier voor?
Ik wil best alle scripts doorlopen, maar daar heb ik nu even geen tijd voor, ben dus alleen op zoek naar een quick fix.quote:Op vrijdag 27 oktober 2006 13:04 schreef JeRa het volgende:
[..]
Er is een makkelijkere manier (zoek naar extract()) maar de betere manier is om het via $_GET, $_POST etc te doen
Ik snap wat je bedoelt maar ook weer niet. :)quote:Op vrijdag 27 oktober 2006 13:00 schreef ralfie het volgende:
@Xtr3mE
je kunt de query dynamisch opbouwen. Dus
[ code verwijderd ]
zal iets anders moeten als er ook combinaties mogelijk zijn, maar je zou het princype moeten snappen
1 2 3 4 5 6 7 8 9 10 11 12 | if ($zoek_klantnaam=="") { $query = "SELECT * FROM Klant WHERE Postcode = '$zoek_postcode' OR Klantnummer = '$zoek_klantnummer'"; $result = mysql_query($query) or die ("Kan opdracht niet uitvoeren"); } else { $query = "SELECT * FROM Klant WHERE Klantnaam LIKE '%$zoek_klantnaam%' OR Postcode = '$zoek_postcode' OR Klantnummer = '$zoek_klantnummer'"; $result = mysql_query($query) or die ("Kan opdracht niet uitvoeren"); } ?> |
Zoiets?quote:Op vrijdag 27 oktober 2006 13:10 schreef wonderer het volgende:
[..]
Ik wil best alle scripts doorlopen, maar daar heb ik nu even geen tijd voor, ben dus alleen op zoek naar een quick fix.
1 2 3 4 5 6 7 8 9 | register_array($array){ foreach($array as $key => $value) { ${$key} = $value; } return true; } ?> |
Zolang je de aan te roepen servers niet laat overstromen met requests van jouw kant of als je geen misbruik maakt van al dan niet bekende exploits in de gebruikte serversoftware niet, nee.quote:Op zaterdag 28 oktober 2006 18:08 schreef Desdinova het volgende:
kan fout omgaan met bepaalde php functies (mail en fsocketopen bijv) een instabiele server tot gevolg hebben? of bijvoorbeeld het niet meer werken van pop en smtp?
quote:Op zondag 29 oktober 2006 09:29 schreef ralfie het volgende:
ik heb als naslagwerk de hele php en mysql manual gedownload en in een locale database draaien, compleet met zoekfunctie. Werkt super
Bedankt voor je hulp! Ik heb het op een iets andere manier gedaan, maar ik weet niet zeker of het veilig genoeg is. Ik heb alles mbt sessies verwijderd en het zo gedaan:quote:Op donderdag 26 oktober 2006 16:01 schreef ralfie het volgende:
[..]
hendigste is om een tabel te maken waarin je de $_SESSION array gewoon serialised en unserialised. Enige wat je moet doen is is dan met een cookie en/of ip bepalen of de huidige gebruiker al een sessie in je database heeft staan en als dat zo is deze eruit halen
Ik geloof dat als identificatie vaak een md5 has van username en password gebruikt wordt
[ code verwijderd ]
uiteraard kun je ook controleren dmv IP-adres, en zul je iets moeten verzinnen om deze tabel af en toe te kunnen legen (datum kolom toevoegen)
1 2 3 4 5 6 | php $plaatsen = array(); array_push($plaatsen, 1); echo array_search(1, $plaatsen); ?> |
1 |
1 |
Try catch blok maken?quote:Op maandag 30 oktober 2006 15:28 schreef wipes66 het volgende:
Weet iemand hoe ik errors van sqlite_query() onderdruk? Een @ er voor werkt niet![]()
ik denk dat je dit bedoeld?quote:Op maandag 30 oktober 2006 10:39 schreef Chandler het volgende:
Weet iemand een regex om dit te filteren?
[ code verwijderd ]
en ik wil graag alles tussen > en </ uitlezenechter staan er af en toe ook rn's tussen.
Iemand een idee?
heb dit al geprobeerd
[ code verwijderd ]
maar dat werkte niet
1 |
had ik ook al geprobeerd, maar sqlite_query() geeft geen exceptions.quote:
1 2 3 4 5 6 7 8 9 10 | function query($sql) { try { $result = sqlite_query($sql,$this->sqlite_connection,SQLITE_ASSOC); } catch ( Exception $e ) { die('ERR:'.$e); } } ?> |
helemaal niemand???quote:Op zondag 29 oktober 2006 09:58 schreef mschol het volgende:
[..]
tja ik wil er ook nog wat van opsteken (dus een boek vind ik dan handiger..)
ik heb nu deze op het oog:
PHP and MySQL Web Development
Web Database Applications with PHP and MySQL
iemand die deze boeken kent?
Er zullen vast wel mensen zijn die boeken gebruiken, maar de meeste gebruiken gewoon het internet denk ikquote:Op maandag 30 oktober 2006 23:57 schreef mschol het volgende:
[..]
helemaal niemand???
gebruikt dan niemand boeken??
Dan moet ik eerst zo'n boek doorwerken. Ik ga liever meteen met mijn website aan de slag. Met het risico natuurlijk dat ik inefficiente technieken gebruik, maar dat neem ik voor lief.quote:Op maandag 30 oktober 2006 23:57 schreef mschol het volgende:
[..]
helemaal niemand???
gebruikt dan niemand boeken??
Is helaas niet gelukt...quote:Op maandag 30 oktober 2006 17:10 schreef ralfie het volgende:
ik denk dat je dit bedoeld?
[ code verwijderd ]
quote:Op dinsdag 31 oktober 2006 11:05 schreef Chandler het volgende:
[..]
Is helaas niet gelukt...
Wat ik eingelijk zoek, en zelf niet achterkom is hoe kan ik uit een stukje tekst het volgende filteren.
<p><h2>กกกก</h2></p>
nu wil ik alleen กกกก hebben en niets meer...
Help!
ennuh ก = & # 3585
1 2 3 | $part=substr ($mystring, strpos ($mystring, "ก"), strrpos ($mystring, "ก")-1); ?> |
quote:Op dinsdag 31 oktober 2006 11:05 schreef Chandler het volgende:
Wat ik eingelijk zoek, en zelf niet achterkom is hoe kan ik uit een stukje tekst het volgende filteren.
<p><h2>กกกก</h2></p>
nu wil ik alleen กกกก hebben en niets meer... :)
1 2 3 | preg_match_all('#>([^<]*)</#', $html, $matches)); echo htmlentities($matches[1][0]); |
SQL is een verzamelnaam voor Structured Query Language. En die heb je in verschillende smaken, zoals MySQL, MSSQL, PostgreSQL, etc.quote:Op dinsdag 31 oktober 2006 12:21 schreef Desdinova het volgende:
zit er eigenlijk veel verschil tussen MySQL en SQL? Qua queries enzo? Of is het zo dat als je met het een kan werken je ook met het andere kan werken?
Vanuit welke codetaal maak je eigenlijk verbinding met een SQL server?
Jawel, mysql, postgresql en interbase/firebirdquote:Op dinsdag 31 oktober 2006 12:58 schreef Desdinova het volgende:
luxe antwoord
thanks
een gratis sql server om mee te spelen zit er niet in begrijp ik
1 2 3 | $sql = "SELECT *, DATE_FORMAT(datum, '%e %m %Y') AS date_x ?> |
1 2 3 4 5 6 7 8 9 10 | $maanden = array(1 => "januari", "februari", "maart", "april", "mei", "juni", "july", "augustus", "september", "oktober", "november", "december"); foreach($maanden as $key => $maand) { if (fnmatch($row[date_x], $key)) { return $maand; } } ?> |
DATE_FORMATquote:Op dinsdag 31 oktober 2006 14:29 schreef super-muffin het volgende:
Dit is een gedeelte uit mijn query:
[ code verwijderd ]
En krijk ik dus als output:
31 10 2006
Hoe zorg ik er voor dat ik ipv die 10, oktober te zien krijg?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $sql = "SELECT *, DATE_FORMAT(datum, '%e %M %y') AS date_x FROM berichten ORDER BY id DESC LIMIT 0, 1"; $result = mysql_query($sql); $loc_nl = setlocale(LC_TIME, 'nl_NL', 'nl'); while ($row = mysql_fetch_assoc($result)) { $maand = strftime("%e %B %y", mktime()); echo "<div class="bericht"> <h2>" . $maand . " " . $row[kop] . "</h2> <p>" . $row[inhoud] . "</p> </div>"; ?> |
Waarom zet je setlocal in een variabele?quote:Op dinsdag 31 oktober 2006 15:28 schreef super-muffin het volgende:
Bedankt
Als ik die localsettings goed zet dan kan ik gewoon %M gebruiken en dan kijg ik de goede Nederlandse maanden?
--toevoeging:
ik heb het goed gekregen
[ code verwijderd ]
Ik vind het echt goed van me zelf
* super-muffin geeft schouderklop aan zich zelf.
ik zou zeggen timestamp in gmt opslaan en dan in php omvormen naar de juiste tijdzone.. (als je de gegevens weer ophaalt)quote:Op woensdag 1 november 2006 18:04 schreef wipes66 het volgende:
Weet iemand hoe je het beste tijd+datum op kan slaan in een db? Ik dacht er zelf aan om gewoon een timestamp (in GMT) te gebruiken. Ik heb er nooit zo over nagedacht om rekening te houden met tijdzones/daylight saving etc.
ja dat is ook wat ik wil, maar hoe kan ik aan een gmt timestamp komen ongeacht de configuratie v/d server?quote:Op woensdag 1 november 2006 19:56 schreef mschol het volgende:
[..]
ik zou zeggen timestamp in gmt opslaan en dan in php omvormen naar de juiste tijdzone.. (als je de gegevens weer ophaalt)
dan kan je namelijk zelf/de gebruiker de tijdzone aangeven
Zelf schrijven?quote:Op woensdag 1 november 2006 22:58 schreef ALTF4 het volgende:
Hallo,
ik ben op zoek naar een script dat op gezette tijden data uit een MySQL database leest en die vervolgens als excel bestand kan wegschrijven op de server. Het op gezette tijden actie ondernemen van het script is geen probleem voor me om in een script te implementen.
Er zijn veel scripts die het mogelijk maken om te linken naar voorbeeld.php en dat de bezoeker dan de keuze krijgt voorbeeld.xls op te slaan of in de browser te openen. Dat zoek ik niet, het xls bestand moet worden opgeslagen op de server.
Voorbeeld van toepassing: Iedere dag een backup maken van een lijst met mensen die zich hebben ingeschreven, in xls formaat zodat het wanneer gewenst direct te openen is in Excel.
Weet iemand een script zoals door mij gezocht te vinden? Graag! Laat het me weten!
Ja dus: http://nl2.php.net/manual-lookup.php?pattern=ODBCquote:Op woensdag 1 november 2006 23:50 schreef IceHeat het volgende:
[..]
Zelf schrijven?ODBC kun je voor Excel gebruiken, maar ik weet niet of je ODBC met PHP kan gebruiken.
Yupquote:Op donderdag 2 november 2006 00:30 schreef fokME2 het volgende:
Kan je met ODCB ook excel bestanden uitlezen?
1 |
Heej, oke.. dat kan me een stap in de richting helpen, hoewel ik nog nooit van ODBC heb gehoord. Maar, ik ben op zoek naar een script dat grotendeels af is vanwege weinig tijd.quote:Op woensdag 1 november 2006 23:50 schreef IceHeat het volgende:
[..]
Zelf schrijven?ODBC kun je voor Excel gebruiken, maar ik weet niet of je ODBC met PHP kan gebruiken.
ORDER BY [kolom]quote:Op donderdag 2 november 2006 23:50 schreef TheSeeker_NL het volgende:
Ik ben een beetje aan het stoeien met sql, maar ik kan het volgende niet vinden in mn boekje.
ik heb een tabel met leden en elk lid heeft een handicap (golf). hoe krijg ik te zien welk lid de laagste handicap heeft?
Ja ok dat is een manier. Maar wat nou als ik alleen de naam wil zien van het lid met de laagste handicap? dus zonder een lijst te genereren en die te ordenen van laag naar hoog?quote:Op vrijdag 3 november 2006 00:08 schreef IceHeat het volgende:
[..]
ORDER BY [kolom]
En dan ook nog ASC DESC aangeven
http://www.w3schools.com/sql/sql_orderby.asp
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |