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
1 2 3 | FROM Persoon WHERE handicap=(SELECT MIN(handicap) FROM Persoon); |
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 | $excel = new COM("excel.application") or die("Unable to instanciate excel"); //bring it to front $excel->Visible = 1;//NOT //dont want alerts ... run silent $excel->DisplayAlerts = 1; //open document $excel->Workbooks->Open("d:/excel.xls"); for ($h = 1; $h <= 3; $h++) { $book = $excel->Workbooks(1); $sheet = $book->Worksheets($h); echo "<table>n"; //Wtite row for ($i = 1; $i <= 150; $i++) { echo "<tr>n"; //write colom for ($j = 1; $j <= 5; $j++) { $cell = $sheet->Cells($i, $j); // #Select the cell (Row Column number) $cell->activate; // #Activate the cell if($cell->value == '0') { $td = ""; } else { $td = $cell->value; } echo "<td>" . $td . "</td>n"; // #write the cell } echo "</tr>n"; } echo "</table>n"; } //closing excel $excel->Quit(); |
foutje in mn sessionid dusquote:Op zaterdag 4 november 2006 23:12 schreef qu63 het volgende:
op de een of andere manier kan ik niet meer via CURL op Fok posten
als ik wil posten krijg ik een #68 (Je bent niet ingelogd en kunt daarom niet reageren. Log eerst in, of vul je gebruikersnaam en wachtwoord in bij het reageervenster, en probeer het dan opnieuw.)
en bij het wijzigen van mijn profiel een #3(Je bent niet ingelogd en kunt daarom geen gebruik maken van deze functie. Klik hier om in te loggen, of hier om je te registreren.)
ik heb gewoon mijn eigen sessionid gebruikt die niet aan mijn ip gebonden is, gebruikersnaam en eachtwoord worden ook meegezonden..
iemand een tip?
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 | <ul> $taal = "NL"; $menu_array = array(); $submenu_array = array(); include("config.php"); @mysql_select_db("database") or die ("kon geen database selecteren"); $query = "SELECT menu FROM menu WHERE taal='$taal' ORDER BY ID"; $result = mysql_query($query); while (list($menu) = mysql_fetch_row($result)) {$de_menu = urldecode($menu); $menu_array[] = "<li>$de_menu</li>"; $query2 = "SELECT titel FROM tekst WHERE taal='$taal' AND menu='$menu' ORDER BY ID"; $result2 = mysql_query($query2); while (list($titel) = mysql_fetch_row($result2)) {$de_titel = urldecode($titel); $submenu_array[] = "<ol><a href='../$database/$titel'>$de_titel</a></ol>";} $query3 = "SELECT titel , URL , priority FROM submenu WHERE taal='$taal' AND menu='$menu' ORDER BY ID"; $result3 = mysql_query($query3); while (list($titel, $url, $priority) = mysql_fetch_row($result3)) {$de_titel = urldecode($titel); if (empty($priority)) {$submenu_array[] = "<ol><a href='$url'>$de_titel</a></ol>"; } else { $output = array_slice ($submenu_array, $priority); $menu_array[] = "<ol><a href='$url'>$de_titel</a></ol>"; $submenu_array = array_merge ($submenu_array, $output); } } $menu_array = array_merge ($menu_array, $submenu_array); print_r($menu_array); unset ($menu_array); unset ($submenu_array); } </ul> ?> |
Helaas heb ik dat door schade en schande zelf ondervonden.quote:Op zondag 5 november 2006 18:43 schreef SuperRembo het volgende:
Je maakt het jezelf alleen maar moeilijk als je jezelf verkeerde encoding aanleert. Dat soort dingen blijven je achtervolgen. (Zie het gehannes met de \ in replique)
Ik zou eerst een ERD maken als ik jouw was.quote:Op zondag 5 november 2006 19:58 schreef ExCibular het volgende:
Aan de hand van jullie eerdere reacties ga ik vanavond bezig om mijn database design wat te optimaliseren.
Graag hoop ik daarom op nog wat tips
Ik heb een database met een aantal tabellen
teksten (hierin de teksten)
acties (specifieke database voor actie teksten andere opbouw dan gewonen teksten)
projecten (idem)
nieuws
Dan heb ik een menu met 7 items en een aantal menuitems hebben submenuitems. Maar niet alle teksten komen in het menu voor. Een aantal van deze items zijn echter niet losstaand maar vormen een soort menu voor zichzelf zonder dat het in de balk voorkomt.
Hoe kan ik dit het beste oplossen?
Ik had nog nooit van een ERD gehoord. Maar ik ga het e.e.a. maar een in kaart brengen. Bedankt voor de tips!quote:Op zondag 5 november 2006 20:28 schreef IceHeat het volgende:
[..]
Ik zou eerst een ERD maken als ik jouw was.
1 |
1 |
1 2 | AchternaamDeelLink(Achternaam_ID,AchternaamDeel_ID) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | ( SELECT AchternaamDeelLink.Achternaam_ID FROM AchternaamDeelLink LEFT JOIN AchternaamDeel ON AchternaamDeelLink.AchternaamDeel_ID=AchternaamDeel .ID WHERE AchternaamDeel.Deelnaam LIKE 'Jan%' OR AchternaamDeel.Deelnaam LIKE 'Laan%' GROUP BY AchternaamDeelLink.Achternaam_ID ORDER BY COUNT(AchternaamDeelLink.Achternaam_ID) DESC ) |
1 |
Volgens mij bestaat er geen waterdicht methode om dat te controleren. Maar als je alles goed controleert is dat niet echt een issue.quote:Op dinsdag 7 november 2006 19:05 schreef splendor het volgende:
En wat ik ook graag wil weten, hoe kun je het beste controleren of een formulier ook écht door jou webserver is verstuurd? Met spoofing kunnen ze een hoop headers veranderen las ik ergens dus dat is niet echt wat ik zoek. Is een random value aanmaken in een hidden input en die controleren met een session een veilige en goede methode?
Iemand een ideequote:Op vrijdag 3 november 2006 23:36 schreef Chandler het volgende:
Weet iemand een goed script dat excel sheets kan uitlezen in php, ik heb er wat gevonden maar ze konden allemaal (behalve hele dure) niet overweg met tekens...
Weet iemand een goed script? google had veel maar helaas niet wat ik zocht (gratis, of ongv 10 euro oid)
Nu ben ik zelf even opzoek gegaan en heb aardig informatie gevonden over excel com. En met wat voorbeelden heb ik het volgende gemaakt.
[ code verwijderd ]
echter als ik het bestand uitlees krijg ik nog steeds vage teksten!wat is de inhoud dan zou je je afvragen!?
Rij A - Nederlandse tekst (arial)
Rij C - Thaise tekens (Angsana New)
Rij E - Engelse tekst (arial)
Maar als ik het uitlees krijg ik het volgende te zien.
[afbeelding]
Oftewel ik lees iets niet goed uit, volgens mij moet ik ergens nog kunnen instellen welk karakterset ik wil gebruiken... maar dat kan ik dus niet vindenliefst zou ik gewoon alle teksten van een cel in codes willen hebben maar goed.
Dit moet de uitkomst zijn ongv.
[afbeelding]
Daar zal iets fout gaan met encoding of de charset of iets dergelijks. Waarschijnlijk krijg je unicode binnen uit excel. Stuur je wel de goede headers? Gebruik je htmlspecialchars()?quote:
Dat is min of meer het idee achter een captcha.quote:Op dinsdag 7 november 2006 19:05 schreef splendor het volgende:
En wat ik ook graag wil weten, hoe kun je het beste controleren of een formulier ook écht door jou webserver is verstuurd? Met spoofing kunnen ze een hoop headers veranderen las ik ergens dus dat is niet echt wat ik zoek. Is een random value aanmaken in een hidden input en die controleren met een session een veilige en goede methode?
Welk boek?quote:Op woensdag 8 november 2006 09:25 schreef mschol het volgende:me php boek is opgestuurd
ben benieuwd
Sr, htmlspecialchars werkt helaas niet... krijg dezelfde output. en goede headers stuur ik inderdaad niet. Heb namelijk geen idee welke ik moet sturen die zowel gewone karakters als thaise karakters ondersteunen...quote:Op woensdag 8 november 2006 08:19 schreef SuperRembo het volgende:
[..]
Daar zal iets fout gaan met encoding of de charset of iets dergelijks. Waarschijnlijk krijg je unicode binnen uit excel. Stuur je wel de goede headers? Gebruik je htmlspecialchars()?
Je kunt natuurlijk ook de manier gebruiken die veel officiele instanties gebruikenquote:Op dinsdag 7 november 2006 20:31 schreef GVRuud het volgende:
heel verhaal
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 | class MySQL { var $db; function connect() { // connect } function do_query($sql) { // doe de query... } } function testA() { $query = $mysql->run_query("QUERY"); } function testB($mysql) { $query = $mysql->run_query("QUERY"); } $mysql = new MySQL; $mysql->connect(); testA(); testB(); ?> |
1 2 3 4 5 6 | class MySQL { function __construct(){ mysql_connect($bla,$blaa,$blaa) or die("couldnt get database"); } ?> |
$GLOBALS schijnt beter te zijn zelfs als een variabele global declareerd, omdat er dan opnieuw iets gedeclareert wordt en $GLOBALS al bestaat. Andere methoden om globalen aan te spreken ken ik niet.quote:Op woensdag 8 november 2006 14:53 schreef Chandler het volgende:
@ralfie.. ah, ik had er wel wat overgehoord maar had de klepel nog niet zien hangenDie construct is inderdaad erg handig!
maar dacht dat $GLOBALS nogal vies was om mee te coden
of mag dat tegenwoordig wel weer
Maaruh nog iets over die construct! Indien je die gebruikt voor bv connecten, dan moet je toch alle gegevens continue in het script zelf hardcoden (username/pass/etc!?) En dat wil ik dus buiten deze class houden
Niet helemaal mee eens. Als je een class mysql maakt dan zou die voor verschillende projecten bruikbaar moeten zijn. En dat beperk je weer als je in de class zelf usernames en passwords enzo gaat zetten. Maar een constructor is natuurlijk ook een functie en kan ook parameters accepteren. Als je daar dingen voor username en password bjizet kun je die doorgeven naar de connect functie en kun je wel je configuratie centraal houden.quote:Op woensdag 8 november 2006 14:15 schreef ralfie het volgende:
Andere tip:
Je kunt mysql->connect() beter als constructor maken. Mocht je dat niet kennen, Constructors zijn functies die automatisch aangeroepen worden als een object gemaakt wordt
[ code verwijderd ]
wanneer je nu $x=new MySQL; doet, zal __construct() aageroepen worden (bij <php 5 heeft de constructor de naam van het object zelf (in dit geval 'function MySQL()' ). Scheelt weer een regel.
1 2 3 4 5 6 7 8 | <?php $result = mysql_query("SELECT * FROM `soortklant` ORDER BY `Naam` ASC"); while (list($Naam) = mysql_fetch_row($result)){ echo ("<option value=$Naam>$Naam</option>n"); } ?> </select> |
Je kunt dat op dezelfde manier doen als je joinet:quote:Op donderdag 9 november 2006 05:51 schreef RiderXXX het volgende:
Het is simpel om random iets uit een database te poepen met RAND(), maar wat nou als ik dat uit 3 verschillende databases tabellen wil doen?
1 2 3 4 5 6 | FROM tabel1 t1 LEFT JOIN tabel2 t2 ON t1.t2id = t2.id LEFT JOIN tabel3 t3 ON t2.t3id = t3.id ORDER BY RAND() LIMIT 0, 3 |
In (X)HTML moet je altijd de waarden van attributen omgeven door aanhalingstekens. Dus like that:quote:Op donderdag 9 november 2006 12:58 schreef Xtr3mE het volgende:
Een klein vraagje:
ik heb een dropdownbox:
[ code verwijderd ]
die gevuld wordt met waardes uit een tabel
Vervolgens kan je er een kiezen en deze door POST toevoegen in een ander tabel. Probleem is echter als er een waarde in zit waar een spatie in zit zoals "Albert Hein" dan wordt alleen "Albert" opgeslagen in de tabel. Hoe krijg ik dit opgelost ? anyone ?
1 |
Zo'n image verification script heb ik al eens gemaakt, dat is hetzelfde toch?quote:Op woensdag 8 november 2006 08:47 schreef Swetsenegger het volgende:
[..]
Dat is min of meer het idee achter een captcha.
Ik genereer een unieke code. Die unieke code plaats ik in een sessie en op beeld als een image. De gebruiker moet vervolgens de code die op het beeld staat overtikken als hij het formulier invult. Alsna de submit ($_POST['captcha'] != $_SESSION['captcha']) { die('spammert');}
Zelf doe ik zoiets met een sessie:quote:Op donderdag 9 november 2006 15:19 schreef Desdinova het volgende:
ik wil een array maken in een array op deze manier:
array["dit"]["dat"] = "blaat";
maar dat werkt niet?
hoe moet ik het schrijven?
Lijkt me welquote:Op donderdag 9 november 2006 15:24 schreef Desdinova het volgende:
kan dit niet in een gewone variabele dan?
1 |
1 |
LOL. Nou succes verderquote:Op donderdag 9 november 2006 15:28 schreef Desdinova het volgende:
misschien kijk ik ergens overheen..
ik heb
[ code verwijderd ]
en krijg parse error
[ code verwijderd ]
line 26 is de regel die ik gepost heb. $row is een object gemaakt met mysql_fetch_object()..
Shite. heb hem al.. Objectnaam begon met een getal (ie. $row->1year)..![]()
Kun je me iets meer uitleg geven, hier word ik niet zo wijs uitquote:Op donderdag 9 november 2006 13:04 schreef JeRa het volgende:
[..]
Je kunt dat op dezelfde manier doen als je joinet:
[ code verwijderd ]
Als de tabellen niet aan elkaar gerelateerd zijn kun je met subqueries werken.
Zoals ik in een aantal posts geleden opmerkte, MySQL werkt niet optimaal met ORDER BY RAND(). Als je heel veel records hebt kunnen de queries langzamer gaan werken, heb je er niet zo heel veel dan maakt het niets uit.
Misschien kun jij even uitleggen hoe je drie tabellen (toch?) aan elkaar gerelateerd zijn, en hoe je precies de random records daaruit wilt halenquote:Op vrijdag 10 november 2006 12:31 schreef RiderXXX het volgende:
[..]
Kun je me iets meer uitleg geven, hier word ik niet zo wijs uit
Ik ben er bijna uit, het excel probleem dan...quote:Op woensdag 8 november 2006 09:37 schreef Chandler het volgende:
[..]
Sr, htmlspecialchars werkt helaas niet... krijg dezelfde output. en goede headers stuur ik inderdaad niet. Heb namelijk geen idee welke ik moet sturen die zowel gewone karakters als thaise karakters ondersteunen...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function saveSession() { $_SESSION['shop'] = array(); $_SESSION['shop']['stuks'] = $this->stuks; $_SESSION['shop']['produkten'] = addslashes(serialize($this->produkten)); $_SESSION['shop']['produkten_stuks'] = $this->produkten_stuks; $_SESSION['shop']['totaalbedrag'] = $this->totaalbedrag; echo 'save'; print_r($_SESSION['shop']); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | function shop() { if (isSet($_SESSION['shop'])) { $this->stuks = $_SESSION['shop']['stuks']; $this->produkten = stripslashes(unserialize($_SESSION['shop']['produkten'])); $this->produkten_stuks = $_SESSION['shop']['produkten_stuks']; $this->totaalbedrag = $_SESSION['shop']['totaalbedrag']; } else { $this->stuks = 0; $this->produkten = array(); $this->produkten_stuks = 0; $this->totaalbedrag = 0; } } ?> |
Echter krijg ik steeds een probleem met het laden ervan... dan zegt het dat het een probleem heeft met unserialize van $_SESSION['shop']['produkten']..quote:$_SESSIE
Array
(
[stuks] => 1
[produkten] => a:1:{i:2;a:5:{s:5:"titel";s:15:"Produkt titel 2";s:10:"stuk_prijs";s:1:"0";s:12:"totaal_prijs";s:1:"0";s:5:"stuks";i:1;s:7:"details";s:15:"Produkt tekst 2";}}
[produkten_stuks] => 1
[totaalbedrag] => 0
)[/code]
[quote]CLASS data
object(shop)(4)
{
["stuks"]=> int(1)
["produkten"]=> array(1)
{
[2]=> array(5)
{
["titel"]=> string(15) "Produkt titel 2"
["stuk_prijs"]=> string(1) "0"
["totaal_prijs"]=> string(1) "0"
["stuks"]=> int(1)
["details"]=> string(15) "Produkt tekst 2"
}
}
["produkten_stuks"]=> int(1)
["totaalbedrag"]=> int(0)
}
Lijn 20 is de unserialize regel in functie shop() waar de sessie tot class data wordt omgezet.quote:Notice: argument passed to unserialize() is not an string in d:wwwbedrijfwww.heartbeadsdesign.nlincludeshop.class.php on line 20
oftewel blijkt dat de array $this->produkten helemaal vern**kt is :Xquote:Warning: Invalid argument supplied for foreach() in d:wwwbedrijfwww.heartbeadsdesign.nlincludeshop.class.php on line 62
saveArray ( [stuks] => [produkten] => N; [produkten_stuks] => [totaalbedrag] => ) array(4) { ["stuks"]=> NULL ["produkten"]=> string(2) "N;" ["produkten_stuks"]=> NULL ["totaalbedrag"]=> NULL }
Hmja, ik heb net die post geupdate met de tabellen en wat ik er precies uit wil halen. Ik wil dat dus gewoon geheel random doen, zoals ik met RAND() LIMIT 1 zou kunnen doen, en dan die uitkomst in $text gooien. Dan kan ik $text gebruiken om de titel in de server te veranderen..quote:Op vrijdag 10 november 2006 12:35 schreef JeRa het volgende:
[..]
Misschien kun jij even uitleggen hoe je drie tabellen (toch?) aan elkaar gerelateerd zijn, en hoe je precies de random records daaruit wilt halen
En als ik je goed begrijp wil je dus uit één willekeurige tabel van de vier die je daar beschrijft een random row halen?quote:Op vrijdag 10 november 2006 12:31 schreef RiderXXX het volgende:
[..]
Het zijn trouwens vier tabellen:
streamrds: text
nieuws: datum titel
frequenties: stad frequentie
top100_shout: naam text
Dus van tabel 'streamrds' is het 'text' en van top100_shout 'naam' EN 'text'. Wat moet ik er dan neergooien?
Dan bepaal je éérst wat je random tabel is in PHP:quote:Op vrijdag 10 november 2006 12:40 schreef RiderXXX het volgende:
Klopt asj een boessie! (klopt als een bus) :P
1 2 3 4 5 | $tabellen = array('streams', 'nieuws', 'etc'); $tabel = $tabellen[array_rand($tabellen)]; unset($tabellen); ?> |
1 2 3 4 5 | $query = 'SELECT * FROM `' . $tabel . '` ORDER BY RAND() LIMIT 1'; $result = mysql_query($query); $data = mysql_fetch_assoc($result); ?> |
1 2 3 4 5 6 7 8 9 10 | switch ($tabel) { case 'streams': echo $data['text']; //ofzo break; case 'nieuws': // etc } ?> |
Ik heb het probleem anders opgelost... door de data die geserialized is te decoden met base64 en daar krijg ik dus weer geen errors van.quote:Op vrijdag 10 november 2006 12:36 schreef Chandler het volgende:
[..]
Ik ben er bijna uit, het excel probleem dan...
Nu heb ik een ander probleem.
Voor mijn webshop ben ik bezig met een class, deze is natuurlijk bij iedere aanroep (include) weer leeg, echter wil ik proberen met sessies de inhoud te saven... echter gaat er iets fout..
Om de sessie aantemaken en de produkten te saven
[ code verwijderd ]
en om het weer in te laden gebruik ik dit
[ code verwijderd ]
Dit is de sessie en class inhoud bij bestellen van een produkt
[..]
Echter krijg ik steeds een probleem met het laden ervan... dan zegt het dat het een probleem heeft met unserialize van $_SESSION['shop']['produkten']..
PS addslashes en stripslashes heb ik er nu in zitten en geeft ie een ander probleem..
zonder addslashes/stripslashes
[..]
Lijn 20 is de unserialize regel in functie shop() waar de sessie tot class data wordt omgezet.
met addslashes/stripslashes
[..]
oftewel blijkt dat de array $this->produkten helemaal vern**kt is :X
Wie heeft een idee??
1 2 3 | $this->produkten = unserialize(base64_decode($_SESSION['shopdata']['produkten'])); ?> |
Hoe je dat in PHP doet moet je zelf gaan bepalen, maar de SQL ziet er ongeveer zo uit (subquery):quote:Op vrijdag 10 november 2006 12:48 schreef RiderXXX het volgende:
Aah relaxed!!! Dit snap ik tenminste.. bedankt :D :*
Edit: wat als ik nu alleen in de tabel 'nieuws' wil sorteren op 'datum' en daar ook dan maar random uit de laatste 10 berichten eentje wil kiezen?
1 2 3 4 5 6 7 8 | SELECT * FROM nieuws ORDER BY datum DESC LIMIT 0, 10 ) t1 ORDER BY RAND() LIMIT 1 |
Ja dat zou inderdaad kunnen, maar zoeken naar 'der Laan' zou op die manier niet werken, terwijl dat wel de bedoeling is.quote:Op woensdag 8 november 2006 09:53 schreef ralfie het volgende:
[..]
Je kunt natuurlijk ook de manier gebruiken die veel officiele instanties gebruiken
achternaam, tussenvoegsels
als in
Laan, van der
Jansen
Het wordt iets moeilijker om bijv 'van der Laan' te zoeken (dit zul je met php om moeten bouwen) maar verder denk ik dat het een goed alternatief is.
Je zou bepaalde woorden kunnen laten herkennen als tussenvoegsels, zodat je uiteindelijk toch op 'Laan' uitkomt?quote:Op vrijdag 10 november 2006 13:44 schreef GVRuud het volgende:
[..]
Ja dat zou inderdaad kunnen, maar zoeken naar 'der Laan' zou op die manier niet werken, terwijl dat wel de bedoeling is.
Lees eens wat over database normalisatie.quote:Op vrijdag 10 november 2006 13:59 schreef RiderXXX het volgende:
Nou, probleem één is klaar. Nu weer het volgende (grote) probleem:
Ik wil een database opbouwen met daarin 'album releases'. Ik wil dat op de volgende manier kunnen showen op de website:
[maand] [jaar]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
[maand] [jaar]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
[dag] [artiest] [albumtitel] [label]
etc.. en de nieuwste maand boven. Maar hoe kan ik dat het beste doen? Het mooiste zou zijn om gewoon één tabelletje te hebben met 'albumreleases' en dat ik daar alles invul, maar wat is het beste qua opbouw in php en sql?
bestaat er niet ook een manier om $db om te toveren naar een superglobal?quote:Op woensdag 8 november 2006 14:15 schreef ralfie het volgende:
Je kunt $GLOBALS['mysql'] gebruiken, of in elke functie 'global $mysql;' zetten, om de globale variabele aan te spreken.
Andere tip:
Je kunt mysql->connect() beter als constructor maken. Mocht je dat niet kennen, Constructors zijn functies die automatisch aangeroepen worden als een object gemaakt wordt
[ code verwijderd ]
wanneer je nu $x=new MySQL; doet, zal __construct() aageroepen worden (bij <php 5 heeft de constructor de naam van het object zelf (in dit geval 'function MySQL()' ). Scheelt weer een regel.
1 2 3 4 5 6 | $_SESSION["naam"] = $_POST["naam"]; $_SESSION["adres"] = $_POST["adres"]; $_SESSION["postcode"] = $_POST["postcode"]; $_SESSION["plaats"] = $_POST["plaats"]; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | session_start(); //wat code if( /*is er gepost? */ ) { $_SESSION["naam"] = $_POST["naam"]; } //nog meer code echo($_SESSION["naam"]); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | foreach ($_POST as $key => $value) { // er van uitgaand dat er geen arrays in je posts staan $_SESSION['postdata'][$key] = $value; } en wil je dit weer echooon foreach ($_SESSION['postdata'] as $key => $value) { echo $key . " = " . $value . "<br />"; } ?> |
Omdat niet alle data die wordt gepost ook in de sessie bewaard moet worden.quote:Op zondag 12 november 2006 18:14 schreef Chandler het volgende:
waarom save je $_POST gegevens niet zo
[ code verwijderd ]
zo ongv doe ik het ook met mijn parser... is altijd handig als je formulieren moet checken!
1 |
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | $newimage = "c:/temp/test.gif"; if($url_file){ $newfile = fopen($newimage,'wb'); while (!feof($url_file)) { $chunk = fread($url_file,1024); fwrite($newfile,$chunk); } fclose($newfile); } else{ $error['no_file'] = "no file found on URL $web_image"; } |
Dit alleen is al niet veilig en biedt ruimte voor bijvoorbeeld XSS (Cross Site Scripting), omdat je untrusted data zonder controle teruggeeft richting de browser.quote:Op zondag 12 november 2006 18:10 schreef papernote het volgende:
Is dit veilig? De POST data wordt dus direct in de sessie opgeslagen. Verder wordt die sessie-data weer op het scherm van de gebruiker getoont.
Je hebt gelijk, je zo zou ie zo je data die je van $_POST of $_GET moeten checken!quote:Op zondag 12 november 2006 23:26 schreef CraZaay het volgende:
[..]
Dit alleen is al niet veilig en biedt ruimte voor bijvoorbeeld XSS (Cross Site Scripting), omdat je untrusted data zonder controle teruggeeft richting de browser.
1 2 3 4 5 6 7 | SELECT * FROM dkm_disco_tracks INNER JOIN dkm_disco_albums ON dkm_disco_tracks.album = dkm_disco_albums.id ORDER BY dkm_disco_tracks.album, dkm_disco_tracks.track ") or die (mysql_error()); |
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 | $array = Array // Aray die alle albums bevat ( 'Blackout' => Array // Array die alle songs van een album bevat ( 'Walk Away', 'Worker Song', 'The Outcast', 'Black Velvet Band', 'Gonna Be A Blackout', 'World Full of Hate' ), 'Sing Loud, Sing Proud' => Array // Array die alle songs van een album bevat ( 'For Boston', 'The Legend of Finn MacCumhail', 'Which Side Are You On?', 'The Rocky Road To Dublin', 'Heroes from Our Past', ) ); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | $prevAlbum = -1; while($row = mysql_fetch_array($query)) { if($prevAlbum != $row['album']) { // Album titel weergeven if($prevAlbum != -1) echo "</ul>"; echo "<li><a href="#">$row[titel]</a></li><ul>"; $prevAlbum = $row['album']; } echo "<li>$row[track_titel]</li>"; } ?> |
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 | <li><a href="#">ALBUM TITLE 1</a> <ul> <li>TRACK TITEL 1</li> <li>TRACk TITEL 2</li> <li>TRACk TITEL 3</li> <li>...</li> </ul> </li> <li><a href="#">ALBUM TITLE 2</a> <ul> <li>TRACK TITEL 1</li> <li>TRACk TITEL 2</li> <li>TRACk TITEL 3</li> <li>...</li> </ul> </li> </ul> |
1 2 3 4 5 6 7 8 9 | while (loop over rows) { if (album id gewijzigd) { nieuw item aan album array toevoegen } track titel toevoegen } |
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | while($row = mysql_fetch_array($query)) { $vars[$row['album']][] = $row[track_titel]; } foreach ($vars as $key => $value){ echo $key."<ul>"; if (is_array($value)){ foreach ($value as $value2){ echo "<li>".$value2."</li>"; } } echo "</ul>"; } ?> |
Je wilt open vragen gaan vergelijken met antwoorden uit database?quote:Op dinsdag 14 november 2006 17:06 schreef USAF het volgende:
Vraagje
Ik ben bezig met een systeem die per dag een aantal vragen weergeeft uit een database. In een textfield/textarea kunnen mensen deze vragen beantwoorden.
Nu wil ik dat de verschillende antwoorden (die in een andere tabel van de db staan) worden vergeleken met het ingevulde antwoord. Want als het goed is krijgt deze user een x-aantal punten.
Ik zat al te denken om de antwoorden in een array te zetten, maar hoe ik deze vervolgens vergelijk met het ingevulde antwoord....
Iemand een idee?
Als hij ernaast een expertsysteem opzet is dat goed mogelijk.quote:Op dinsdag 14 november 2006 17:24 schreef Swetsenegger het volgende:
[..]
Je wilt open vragen gaan vergelijken met antwoorden uit database?
Moet te doen zijn, tot op zekere hoogte.quote:Op dinsdag 14 november 2006 17:24 schreef Swetsenegger het volgende:
[..]
Je wilt open vragen gaan vergelijken met antwoorden uit database?
Zou een probleem op kunnen leveren wanneer je $vars[$row['album']] niet eerst declareert als array.quote:Op dinsdag 14 november 2006 09:16 schreef Desdinova het volgende:
ik weet niet of je er al uit bent, maar misschien is dit wat
[ code verwijderd ]
niet getest overigens. ook niet gechecked op parse errors
PHLIPS is een PHP extentie voor CLIPS, waarmee je expertsystemen kan bouwen.quote:Op dinsdag 14 november 2006 18:37 schreef Swetsenegger het volgende:
Ik zeg toch niet dat het niet gaat, ik wil allen duidelijkheid
Overigens zou IK niet weten hoe je dat technisch op moet lossen. Misschien met een soort thesaurus ofzo.
Interessantquote:Op dinsdag 14 november 2006 18:41 schreef papernote het volgende:
[..]
PHLIPS is een PHP extentie voor CLIPS, waarmee je expertsystemen kan bouwen.
Expertsystemen kunnen reageren op natuurlijke taal en daarmee zou je dan zoiets kunnen implementeren. Zo heb ik zelf eens een helpdesk gemaakt in CLIPS, die reageerde op vragen als: "Mijn XboX is stuk, wat moet ik doen?".
Deze vraag werd dan ingelezen door het systeem en gefilterd op bepaalde woorden. Er wordt gezocht naar een bekend onderwerp (XboX) en een probleem (stuk) en of er een negatie (bijv. niet) in voor komt. Aan de hand daarvan worden er dan in het programma bepaalde regels geactiveerd die een vervolgvraag stellen.
Overigens heb ik dat direct in CLIPS geschreven en geen gebruik gemaakt van PHLIPS, maar middels PHLIPS zou je dat dus ook aan PHP kunnen koppelen.
Die vraag is al beantwoord. Wanneer je met full text antwoorden werkt zal je met een expert systeem moeten werken, zie de vorige pagina.quote:Op dinsdag 14 november 2006 20:39 schreef USAF het volgende:
Hopelijk iets duidelijker dit keer
Ik heb dus een tabel 'vragen' en een tabel 'antwoorden', tabel antwoorden is gekoppeld aan tabel vragen door vraagid. Tevens heeft de tabel een veld met dag, maand en jaar zodat je weet welke vragen op welke dag getoond moeten worden.
Op de pagina's waar de vragen staan, staan tekstvelden om de antwoorden voor de vragen in te vullen. De naam van het tekstveld is gelijk aan het id van de vraag.
Als het formulier vervolgens gesubmit wordt, wil ik dat per vraag, de ingevulde waarde vergeleken wordt met de (mogelijk meerdere) row's in de tabel 'antwoorden'.
Mensen met toegang tot het back-end kunnen later nog altijd antwoorden waar bijv. een spellingsfout in zit goedkeuren, daar zit het probleem dus niet in.
Maar het probleem voor mij is, hoe vergelijk ik de ingevulde waarde met de mogelijke antwoorden in de database![]()
Gewoon zonder transparency opslaan.quote:Op dinsdag 14 november 2006 21:37 schreef Skorpija het volgende:
Weet iemand het volgende:
Ik wil transparency verwijderen van een gif plaatje en er wit van maken.
Maar ik kan nergens vinden hoe dit moet. Alle voorbeelden zijn juist om een bepaalde kleur transparant te maken...
quote:Op dinsdag 14 november 2006 21:40 schreef Swetsenegger het volgende:
[..]
Gewoon zonder transparency opslaan.
Ah... niet denk ik...quote:Op dinsdag 14 november 2006 21:42 schreef Skorpija het volgende:
[..]Ik heb m'n post nog even ge-edit.
Ik bedoelde, hoe maak ik via php m.b.v. de GD Library een transparante kleur wit..
1 2 3 | $ret = preg_replace("#[url=http://imageshack.us][img=([w:%&/.;\#-=?[]+] echo $ret; |
Ik denk dat een expert-systeem te geavanceerd is voor dit probleem. Je zou dit wellicht als volgt kunnen aanpakken:quote:Op dinsdag 14 november 2006 20:41 schreef Swetsenegger het volgende:
[..]
Die vraag is al beantwoord. Wanneer je met full text antwoorden werkt zal je met een expert systeem moeten werken, zie de vorige pagina.
Een eenvoudiger alternatief is natuurlijk multiple-choice.
De tabellen:quote:Q: Who wrote: "Bring me my bow of burning gold: Bring me my arrows of desire.." ?
A: William Blake (1757-1827, English poet, painter and mystic.)
1 2 3 | 1 Who wrote: "Bring me my bo... 2 Bla bla bla |
1 2 3 4 5 | 1 blake 1 william 1 1827 2 blob |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $punten = 0; $answer = strtolower($_POST["answer"]); if(strstr("blake", $answer)) { echo("CORRECT"); $punten += 1; if(strstr("william", $answer)) { $punten += 1; } //enz... } else { echo("FOUT"); } ?> |
Het lijkt me redelijk omslachtig, maar het is te doen.quote:Op dinsdag 14 november 2006 22:03 schreef papernote het volgende:
[..]
Ik denk dat een expert-systeem te geavanceerd is voor dit probleem. Je zou dit wellicht als volgt kunnen aanpakken:
Je neemt een tabel met vragen en een tabel met antwoorden die je aan elkaar linkt middels een ID of zoiets dergelijks. Vervolgens stel je de vraag en komt het antwoord binnen via de POST. Dan zou je het antwoord kunnen scannen op voorkomens van bepaalde woorden die je in het antwoord verwacht. Deze woorden staan dan natuurlijk in je antwoorden-tabel.
Voorbeeld uit een random quiz:
[..]
De tabellen:
Vragen
[ code verwijderd ]
Antwoorden
[ code verwijderd ]
Middels PHP kan je simpel controleren of het woord "Blake" voorkomt in het antwoord. Verder zou je dan extra punten kunnen geven voor het voorkomen van "William" en ook nog voor de jaartallen.
[ code verwijderd ]
Het hangt natuurlijk wel af van het soort vragen dat je gaat stellen, maar op deze manier zou je wellicht een aardig eindje kunnen komen.
Ik zou graag een uitleg zien inderdaadquote:Als iemand overigens interesse heeft in expertsystemen dan kan ik daar wel eens een topic over openen met een korte tutorial?
http://nl2.php.net/similar_textquote:Op dinsdag 14 november 2006 22:08 schreef CraZaay het volgende:
Daarnaast kun je met PHP ook nog simpel checken in hoeverre een antwoord overeenkomt (strings vergelijken en match-percentage returnen).
stukje verder maar nog niet de oplossing...quote:Op dinsdag 14 november 2006 21:52 schreef Darkomen het volgende:
Wie kan me even helpen met de volgende replace?
[ code verwijderd ]
1 2 3 | echo $ret.' => <br />'; $ret = preg_replace("#[URL=http://imageshack.us+\][a-zA-Z0-9.:=/_\[\]- ]+\[/URL\]#sie","'\\1'", $ret); |
vraag is een beetje wat je wilt hequote:Op woensdag 15 november 2006 13:57 schreef Darkomen het volgende:
[..]
stukje verder maar nog niet de oplossing...
[ code verwijderd ]
Ik krijg er dit uit:
}test{}test{
1 2 3 4 5 6 | $ret = "}test{[url=http://imageshack.us][img=http://img164.imageshack.us/img164/220/152tuning72868gm5.jpg][/url]}test{ "; echo $ret.' => <br />'; $ret = preg_replace("#\[URL=http://imageshack\.us\]([a-z0-9.:=/_\[\]\- ]+)\[/URL\]#sie","'\\1'", $ret); echo $ret; ?> |
Het is een optie als je alleen typefouten etc af wilt vangen.quote:Op dinsdag 14 november 2006 22:16 schreef Swetsenegger het volgende:
[..]
http://nl2.php.net/similar_text
Maar die geeft het aantal overeenkomende karakters in de strings weer.... lijkt me op z'n zachts gezegd niet de meest betrouwbare methode voor een correct antwoord.
Is HTTP authenticatie via je webserver niet misschien een adequate oplossing?quote:Op donderdag 16 november 2006 12:46 schreef De_Hertog het volgende:
Ik zoek een tutorail voor een simpel login-systeem. Als ik op Google zoek vind ik vooral uitgebreide systemen, met login-aanvraag, password-mailer en dat soort dingen, en ik wil alleen maar een gedeelte van mijn site afschermen. Heeft iemand daar een simpele tutorial voor?
Dat ziet er ook wel goed genoeg uit ja, niet eens aan gedacht. Dank je welquote:Op donderdag 16 november 2006 13:00 schreef JeRa het volgende:
[..]
Is HTTP authenticatie via je webserver niet misschien een adequate oplossing?
Voor Apache kun je hier meer vinden.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | function get_file_list($root_dir) { if (is_dir($root_dir)) { if ($dh = opendir($root_dir)) { while (false !== ($file = readdir($dh))) { if($file != "." && $file != "..") { $ext = substr($file,-3,3); if(preg_match("/avi|mkv|mpg|mpeg|wmv|mp4/i",$ext)) { $array[] .= $file; } } } closedir($dh); } } return $array; } ?> |
quote:Op maandag 20 november 2006 17:18 schreef ralfie het volgende:
Dit moet je niet in php doen! De enige methode om dit in php te doen zou zijn met recursieve functies, en dat is ronduit stront als je hele schijven gaat indexeren.
(ik neem tenminste aan dat dit voor je projectje van je andere topic is, op windows?)
gebruik de executables die er voor bedoeld zijn, die werken VEEEEEEEEL sneller
[ code verwijderd ]
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 | function getFiles($path, $fileFilter) { $dirStack = array($path); $files = array(); while (null !== ($dir = array_pop($dirStack))) { $dh = opendir($dir) or die(sprintf('Error: Could not open directory "%s".', $dir)); while (false !== ($file = readdir($dh))) { if($file != "." && $file != "..") { $fullFile = $dir . $file; if (is_file($fullFile)) { if (preg_match($fileFilter, $file)) { $files[] = $fullFile; } } else if (is_dir($fullFile)) { $dirStack[] = $fullFile . '/'; } } } closedir($dh); } return $files; } $files = getFiles('d:/temp/', '/\\.(avi|mkv|mpg|mpeg|wmv|mp4)$/i'); sort($files); header('Content-type: text/plain'); print_r($files); ?> |
hmm, leuke functie. Snap alleen niet hoe exec niet handig is als je op verschillende extensies wil filteren, je kunt gewoon "dir /s /b *.exe *.avi *.txt" doen...quote:Op maandag 20 november 2006 18:32 schreef SuperRembo het volgende:
[..]Het hoeft niet met een recursieve functie (zie onder) Exec is niet handig als het bij een externe host moet draaien Exec is niet handig als je op verschillende extensies wil filteren Exec is niet handig als het op een ander OS moet draaien
[ code verwijderd ]
betreft idd dat topicquote:Op maandag 20 november 2006 18:43 schreef ralfie het volgende:
[..]
hmm, leuke functie. Snap alleen niet hoe exec niet handig is als je op verschillende extensies wil filteren, je kunt gewoon "dir /s /b *.exe *.avi *.txt" doen...
Daarnaast zijn de andere punten niet van toepassing als (zoals in aannam) het ging over dit topic
snelheid is voor mij opzich geen punt, tenzij ik timeout's ga krijgenquote:Op maandag 20 november 2006 17:18 schreef ralfie het volgende:
Dit moet je niet in php doen! De enige methode om dit in php te doen zou zijn met recursieve functies, en dat is ronduit stront als je hele schijven gaat indexeren.
(ik neem tenminste aan dat dit voor je projectje van je andere topic is, op windows?)
gebruik de executables die er voor bedoeld zijn, die werken VEEEEEEEEL sneller
[ code verwijderd ]
hmm externe host wordt het zowieso niet (server staat hier lokaal, en me domein zal daar ook naar verhuizenquote:Op maandag 20 november 2006 18:32 schreef SuperRembo het volgende:
[..]Het hoeft niet met een recursieve functie (zie onder) Exec is niet handig als het bij een externe host moet draaien Exec is niet handig als je op verschillende extensies wil filteren Exec is niet handig als het op een ander OS moet draaien
[ code verwijderd ]
Vergeet niet ook de connection met MySQL te initialiseren voor de goede character set.quote:Op maandag 20 november 2006 21:25 schreef De_Hertog het volgende:
Weer een vraagje van mijn kant: Ik heb een tabel met een aantal speciale tekens erin, zoals Ä of ö of ß. Nu las ik op http://dev.mysql.com/tech-resources/articles/4.1/unicode.html dat MySQL Unicode aankan, en dat PHP het zou moeten kunnen lezen. Ik heb de tabel, in Navicat, omgezet naar utf-8, maar de php pagina geeft de variabelen nog steeds weer als vraagtekens. Ik heb, zoals daar staat, in de header de character set op utf-8 staan.
1 |
PHP negeert ze sowieso niet, MySQL negeert ze als je er een comparison of sortering op loslaat zolang je geen 'binary' collation gebruikt.quote:Ik wil natuurlijk weten hoe ik dit goed kan krijgen, maar eerst het volgende: ik hoorde van een vriend dat php/mysql accenten negeert. Dus, als ik zoek op 'brau' krijg ik ook 'bräu' in beeld. Klopt dit? Zo nee, dan zet ik er gewoon de 'Nederlandse' equivalenten neer
Dat is alleen zo wanneer je ook HTML met unicode karakters in je PHP-files hebt staan, maar anders maakt het toch echt niéts uit hoe je je PHP-files opslaat hoorquote:Op maandag 20 november 2006 23:03 schreef CraZaay het volgende:
Het PHP-bestand wat de waarden laat zien moet ook UTF-8 zijn. Niet alleen in de HTML zetten dat het UTF-8 is, maar het bestand dat ook daadwerkelijk laten zijn.
1 2 3 4 5 6 7 8 9 10 11 | if (!$login) { $login = checkLogin(); } // Dit zou fout zijn gegaan als je $login niet eerst op false had gezet if ($login) { executeAdministrativeDeletionOfAllTables(); } |
1 2 3 | Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:PHPuploadtempphp11CE.tmp' to 'D:wwwhtmltulpenselectie.nlapplicationfilesimgenkele_bloem_113_.jpg' in D:wwwhtmltulpenselectie.nlapplicationincludesfunctionsinc_fotos_functions.php on line 354 |
Laat eens wat foutmeldingen en code zienquote:Op dinsdag 21 november 2006 00:30 schreef mschol het volgende:
kan php een netwerk directory niet uitlezen
ik heb wel iets gevonden via google (apache onder andere username en een registry key aanpasen) maar beide werken niet
iemand die hier ervaring mee heeft onder windows?
Probeer dit eens inderdaad, want het lijkt erop alsof Apache de bestanden wegschrijft onder een gebruiker waar jouw scripts met PHP niets aan mogen veranderen. Wellicht mogen ze die bestanden wél lezenquote:Op dinsdag 21 november 2006 13:47 schreef Darkomen het volgende:
Probeer eens copieren ipv verplaatsen
:@quote:Op dinsdag 21 november 2006 13:50 schreef JeRa het volgende:
[..]
Laat eens wat foutmeldingen en code zien :)?
code die ik gebruik:quote:Warning: opendir(Z:): failed to open dir: Invalid argument in d:wwwffmpegtest.php on line 73
Error: Could not open directory: Z:
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 | function getFiles($path, $fileFilter) { $dirStack = array($path); $files = array(); while (null !== ($dir = array_pop($dirStack))) { $dh = opendir($dir) or die('Error: Could not open directory: '.$dir); while (false !== ($file = readdir($dh))) { if($file != "." && $file != "..") { $fullFile = $dir . $file; if (is_file($fullFile)) { if (preg_match($fileFilter, $file)) { $files[] = $fullFile; } } else if (is_dir($fullFile)) { $dirStack[] = $fullFile . '/'; } } } closedir($dh); } sort($files); return $files; } $main_dir = "Z:\"; $files = getFiles($main_dir,'/\.(avi|mkv|mpg|mpeg|wmv|mp4)$/i'); ?> |
1 2 3 | "<td><a href="verwijder_werknemer.php?id=" . $rij['id'] .""><img src="img/delete.png"/></a></td>" . ?> |
1 2 3 | "<td><a href="verwijder_werknemer.php?id=" .$rij['id'] . "">Verwijderen</a>" . ?> |
quote:Parse error: syntax error, unexpected T_STRING in C:Program FilesxampphtdocsAlura-werkenalura_overzicht.php on line 34
1 2 3 | echo "<td><a href=\"verwijder_werknemer.php?id=" . $rij['id'] ."\"><img src=\"img/delete.png\"/></a></td>" ; ?> |
Je kunt via cmd wel gewoon Z: benaderen?quote:Op dinsdag 21 november 2006 14:58 schreef mschol het volgende:
[..]
foutmelding:
[..]
code die ik gebruik:
[ code verwijderd ]
Je kunt splitten op de forwardslashquote:Op dinsdag 21 november 2006 20:24 schreef Qunix het volgende:
Kan iemand me hiermee helpen?
Met "$_SERVER['PHP_SELF'];" laat hij de hele pad zien tot het php document waar het script zich bevind. Nu wil ik alleen de laatste map in een variabel en de map er boven in een aparte variabel.
www/
www/index.php
www/images/plaatje.jpg
www/images/index.php
in images/index.php heb ik het script $_SERVER['PHP_SELF'] en daar staat dan het volgende:
www/images/index.php
Hoe laat ik weergeven dat hij alleen "images" toont.![]()
1 2 | print_r($pad); |
Thanks... Was ik nog niet opgekomenquote:Op dinsdag 21 november 2006 20:29 schreef JeRa het volgende:
[..]
Je kunt splitten op de forwardslash
[ code verwijderd ]
yep,quote:Op dinsdag 21 november 2006 20:27 schreef JeRa het volgende:
[..]
Je kunt via cmd wel gewoon Z: benaderen?
Apache start (onder Linux iig) de threads als een andere gebruiker, je kunt dit in de configuratie instellen. Het maakt dus niet uit of je Apache start als Administratorquote:
onder windows draait een service standaard onder het local system account, dit kan je aanpassen naar een andere gebruiker.quote:Op dinsdag 21 november 2006 20:45 schreef JeRa het volgende:
[..]
Apache start (onder Linux iig) de threads als een andere gebruiker, je kunt dit in de configuratie instellen. Het maakt dus niet uit of je Apache start als Administrator
En hoe staat het met de rechten van schijf Z:?quote:Op dinsdag 21 november 2006 20:50 schreef mschol het volgende:
[..]
onder windows draait een service standaard onder het local system account, dit kan je aanpassen naar een andere gebruiker.
en de threads draaien volgens mij (zover ik in mijn httpd.conf kan zien) ook allemaal onder dezelfde username
screenshot genomen op me serverquote:Op dinsdag 21 november 2006 20:54 schreef JeRa het volgende:
[..]
En hoe staat het met de rechten van schijf Z:?
1 2 3 4 5 6 7 | <form action="index.php?p=action&actie=nieuwe_mark/"> //inputs </form> <input type="submit" value="verstuur!" /> ?> |
1 |
1 2 3 4 5 | if (!in_array($file, $skipDirs)) { // yay } |
ahh thnx, lijkt erop dattie temporary internet files niet leuk vind..quote:Op woensdag 22 november 2006 22:43 schreef JeRa het volgende:
@mschol
Probeer eens te achterhalen waar je script blijft hangen door bijvoorbeeld directories te echo'en (en te flush()en!).
Heldquote:Die if-constructie kún je wel anders schrijven, namelijk zo:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | function RandomBackground($dir) { GLOBAL $shown; if( $open_dir = opendir($dir) ) { while( FALSE !== ($file = readdir($open_dir)) ) { if($file != "." && $file != ".." && $file!="index.html") { $absolute_file = $dir.'/'.$file; if(is_file($absolute_file)) { $afbeelding[] = $file; } } } } $return = $afbeelding[rand(0,count($afbeelding))]; $return = (!in_array($return, $shown)) ? $return : RandomBackground($dir); $shown[] .= $return; return ($return) ? $return : RandomBackground($dir); } $image = RandomBackground($root); |
even ter voorbeeld:quote:Op vrijdag 24 november 2006 05:00 schreef RiderXXX het volgende:
Okay... maar ik wil nu alleen dat automatisch alle maanden (en jaren) die ingevuld zijn in de database tevoorschijn komen... dus als er iets niet is toegevoegd voor december 2006, moet die maand niet weergegeven worden... maar die van januari 2007 weer wel, als daar iets voor is toegevoegd...
1 2 3 4 5 6 7 8 9 10 11 12 | $result=mysql_query("SELECT naam,MONTHNAME(datum) as month,YEAR(datum) as year FROM albums ORDER BY datum") or die(mysql_error()); $curr=array(-1,-1); while($row=mysql_fetch_assoc($result)) { if ($curr[0]!=$row['month'] || $curr[1]!=$row['year']) { echo "<p><br/></p><b>{$row['month']} {$row['year']}</b><br/>"; $curr=array($row['month'],$row['year']); } echo "ARTIEST: {$row['naam']}<br/>"; } ?> |
1 2 3 4 5 6 7 | for($i=1; $i<5; $i++){ $left=$i*10; $text=substr ($ResultStr, 0, $i); imagettftext($NewImage, 10, mt_rand(-20,20), $left, 15, $TextColor, $font, $text); } ?> |
1 |
Ja, maar ik wil dus een random getal uit 2 van die reeksen. Ik heb nu dit, maar dat vind ik een beetje knoeien eigenlijkquote:Op zondag 26 november 2006 13:48 schreef SuperRembo het volgende:
rand() en mt_rand() hebben toch al een min en max parameter?
[ code verwijderd ]
1 2 3 4 5 6 7 8 | $reeks=mt_rand(1,2); if($reeks==1){ $angle= mt_rand(0,15); }else{ $angle= mt_rand(345,360); } ?> |
1 2 3 4 | $offsets = array(0, 15); $offset = $offsets[array_rand($offsets)]; $angle = mt_rand($offset, $offset + $range); |
Het is natuurlijk wel zo dat als je meerdere ranges introduceert (6 ofzo) je dan nog steeds maar 4 regels hebt. Maar kijk maar, succes met je captchaquote:Op zondag 26 november 2006 14:35 schreef Swetsenegger het volgende:
@JeRa, nee precies.
Voor future reference is het wel handigquote:Op zondag 26 november 2006 14:45 schreef JeRa het volgende:
[..]
Het is natuurlijk wel zo dat als je meerdere ranges introduceert (6 ofzo) je dan nog steeds maar 4 regels hebt. Maar kijk maar, succes met je captcha
Feitelijk is dit alleen een andere if notatiequote:Op zondag 26 november 2006 15:00 schreef ralfie het volgende:
[ code verwijderd ]
één regel, één randomisatie
En één onleesbare meuk als je er later eens naar terugkijktquote:Op zondag 26 november 2006 15:00 schreef ralfie het volgende:
[ code verwijderd ]
één regel, één randomisatie
niet voor mij, ik ben gewend met onleesbare meuk te werken (handschrift)quote:Op zondag 26 november 2006 15:05 schreef JeRa het volgende:
[..]
En één onleesbare meuk als je er later eens naar terugkijkt
dan zou ik het ook moeten kunnen snappen, en dat lukt me dus echt nietquote:Op zondag 26 november 2006 15:11 schreef ralfie het volgende:
[..]
niet voor mij, ik ben gewend met onleesbare meuk te werken (handschrift)![]()
Je snapt deze niet?quote:Op zondag 26 november 2006 15:20 schreef qu63 het volgende:
[..]
dan zou ik het ook moeten kunnen snappen, en dat lukt me dus echt niet :D
1 |
Maar om gelijkwaardig te zijn met de code die je eerder gaf zou het dit moeten zijn :Pquote:
1 |
quote:Op zondag 26 november 2006 17:00 schreef SuperRembo het volgende:
[..]
Maar om gelijkwaardig te zijn met de code die je eerder gaf zou het dit moeten zijn
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | include("config/mysql.php"); $query ="SELECT gNaam FROM gebruikers WHERE NOT id=1"; $resultaat = mysql_query($query) or die("Query: ".$query." Fout: ".mysql_error()); echo "<form action=verzend3.php method=POST><select name=gebruikers>"; while ($record = mysql_fetch_array($resultaat)) { echo "<option value=user>".$record["gNaam"]."</option>"; } echo "</select>"; echo "<input type='submit'>"; echo "</form>"; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | //verbinding met de database maken include("config/mysql.php"); $sql = "SELECT * FROM gebruikers WHERE gNaam = '" . $_POST['user'] . "'"; $resultaat = mysql_query($sql) or die("Query: ".$query." Fout: ".mysql_error()); while ($record = mysql_fetch_assoc($resultaat)) { echo "<b>".$record['gNaam']."</b> ".$record['id']." ".$record['achternaam']."<br>n"; } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | include("config/mysql.php"); $query ="SELECT gNaam, id FROM gebruikers WHERE NOT id=1"; $resultaat = mysql_query($query) or die("Query: ".$query." Fout: ".mysql_error()); echo "<form action=verzend3.php method=POST><select name=gebruikers>"; while ($record = mysql_fetch_array($resultaat)) { echo "<option value='". $record["gNaam"] ."'>".$record["gNaam"]."</option>"; } echo "</select>"; echo "<input type='submit'>"; echo "</form>"; ?> |
http://www.oscommerce.nl/quote:Op maandag 27 november 2006 10:32 schreef Darkomen het volgende:
Webshop met voorraad functie gezocht.
Jongens ik moet over een tijdje een webshop opzetten voor een goede vriend van me, dit moet allemaal officeel.
Het moet dus een webshop worden met voorraad systeem zodat hij goed kan bijhouden wat er nog op voorraad is.
Ik ga dit niet zelf bouwen aangezien er genoeg goede systemen zijn, het enige wat ik zal toevoegen is een CMS gedeelte voor de rest van de site.
Dit wil ik dan wel via dezelfde login als de webshop laten werken.
Ik ben wel bezig met wat aan het bekijken bij hotscripts, maar welke zouden jullie aanraden?
http://www.in-commerce.net/index.html
395$ coupons, volgens mij alleen als module
http://digishop.sumeffect.com/index.php
mooi, netzo duur, wel reports, standalone,
http://www.ecommercetemplates.com/dreamweaverecommerce.asp
Ook mooi, allen vondt ik het niet duidelijk of het nu een systeem was of alleen templatse?![]()
Gewoon zelf opzetten, leer je veel vanquote:Op maandag 27 november 2006 10:32 schreef Darkomen het volgende:
Webshop met voorraad functie gezocht.
Jongens ik moet over een tijdje een webshop opzetten voor een goede vriend van me, dit moet allemaal officeel.
Het moet dus een webshop worden met voorraad systeem zodat hij goed kan bijhouden wat er nog op voorraad is.
Ik ga dit niet zelf bouwen aangezien er genoeg goede systemen zijn, het enige wat ik zal toevoegen is een CMS gedeelte voor de rest van de site.
Dit wil ik dan wel via dezelfde login als de webshop laten werken.
Ik ben wel bezig met wat aan het bekijken bij hotscripts, maar welke zouden jullie aanraden?
http://www.in-commerce.net/index.html
395$ coupons, volgens mij alleen als module
http://digishop.sumeffect.com/index.php
mooi, netzo duur, wel reports, standalone,
http://www.ecommercetemplates.com/dreamweaverecommerce.asp
Ook mooi, allen vondt ik het niet duidelijk of het nu een systeem was of alleen templatse?![]()
Die van mij is ook professioneel in gebruik en heeft afgelopen jaar een kleine ton aan omzet gedraaidquote:Op maandag 27 november 2006 16:06 schreef Darkomen het volgende:
Als het voor mezelf was zou ik het graag gaan proberen, maar ik heb nu niet de tijd en de kennis om een webshop te bouwen
Het is ook voor een proffesionele site, dus ik wil niet dat ik er na een aantal maanden achterkom dat er gevaarlijk bugjes in zitten.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |