het gaat wel om bijna 40 jaar aan data he. Dus een link tussen Queen en the beatles is, is dat ze in dezelfde studio opgenomen hebben, maar ook dat Brian(gitarist) en Roger(drummer) in 2002 tijdens het jubileum-concert voor de Engelse koningin samen met Paul McCartney gespeeld hebben..quote:Op dinsdag 6 november 2007 20:47 schreef Geqxon het volgende:
Een tabel met artiesten, en een koppeltabel voor de relaties tussen artiesten? Vervolgens een left join op de koppeltabel, en je hebt alle relaties.
Het werkt prima, alleen is het echt retetraag ten opzichte van andere programmeer talen.quote:Op dinsdag 6 november 2007 20:35 schreef beerten het volgende:
[..]
http://www.google.nl/search?hl=nl&q=recursion+php&btnG=Google+zoeken&meta=
Ik werk er zelf mee in PHP, werkt uitstekend.
Waarom zou het niet werken????
last.fm biedt zo iets toch ook aan?quote:Op dinsdag 6 november 2007 20:43 schreef qu63 het volgende:
Ik heb weer eens een geniaal idee
Of het uitvoerbaar is, is weer een ander verhaal..
Ik wil een site (oid) opzetten, waarin je dan 1 artiest invult, en mijn site moet dan uitzoeken of die artiest een link heeft met Queen (dat is dus de uitgangsbasis)
dus:
INVOER -> Queen
INVOER -> ARTIEST/LOKATIE/BIJZONDERHEDEN -> Queen
dus met maximaal 1 tussenstap (een beetje zoals je bij hyves dus kan zien hoe je via via bij iemand terecht kan komen..)
Hoe zou ik mijn database op moeten stellen?
Er zit wel megaveel data in, dat weet ik wel...
Dus ook veel tabellen denk ik, maar hoe zit het met de onderlinge relaties? Hoe is dat makkelijk te maken?
Ik hoop dat het duidelijk is, an dat iemand me kan helpen
niet zo uitgebreid geloof ik..quote:Op dinsdag 6 november 2007 21:46 schreef PiRANiA het volgende:
[..]
last.fm biedt zo iets toch ook aan?
dat zal wel ja, daarom probeer ik het ook zo efficient mogelijk te doen.quote:En als je het over zulke hoeveelheden date hebt...
Wordt wat traag misschien?
Hoe omvangrijk is/zijn de database/gegevens? MySQL vind ik nog steeds supertof en gebruik ik nog het meest, maar voor hele omvangrijke databases zijn MSSQL of Oracle nog steeds meer geschikt, en kunnen sneller met grote aantallen gegevens omgaan.quote:Op dinsdag 6 november 2007 20:43 schreef qu63 het volgende:
Ik heb weer eens een geniaal idee
Of het uitvoerbaar is, is weer een ander verhaal..
Ik wil een site (oid) opzetten, waarin je dan 1 artiest invult, en mijn site moet dan uitzoeken of die artiest een link heeft met Queen (dat is dus de uitgangsbasis)
dus:
INVOER -> Queen
INVOER -> ARTIEST/LOKATIE/BIJZONDERHEDEN -> Queen
dus met maximaal 1 tussenstap (een beetje zoals je bij hyves dus kan zien hoe je via via bij iemand terecht kan komen..)
Hoe zou ik mijn database op moeten stellen?
Er zit wel megaveel data in, dat weet ik wel...
Dus ook veel tabellen denk ik, maar hoe zit het met de onderlinge relaties? Hoe is dat makkelijk te maken?
Ik hoop dat het duidelijk is, an dat iemand me kan helpen
het zal zeker omvangrijk zijn, en helaas heb ik alleen de beschikking over MySQLquote:Op dinsdag 6 november 2007 22:02 schreef Tuvai.net het volgende:
[..]
Hoe omvangrijk is/zijn de database/gegevens? MySQL vind ik nog steeds supertof en gebruik ik nog het meest, maar voor hele omvangrijke databases zijn MSSQL of Oracle nog steeds meer geschikt, en kunnen sneller met grote aantallen gegevens omgaan.
2000 is piece of cake voor MySQL, het is iets relevanter om te weten hoeveel tabellen met hoeveel geschatte reccords (en rond het maar ruig naar boven af). Het is een beetje de vraag wat je nou precies wilt gaan opslaan en hoe je dat doet. Als je dat op de juiste manier doet kan je veel snelheids winst halen net als met je queries goed optimaliserenquote:Op dinsdag 6 november 2007 22:05 schreef qu63 het volgende:
[..]
het zal zeker omvangrijk zijn, en helaas heb ik alleen de beschikking over MySQL
en omvangrijk zal zijn, zeker 2000 artiesten (minimaal) en dus links in maximaal 2 (A->B->Queen of A->Queen) stappen en de bijbehorende tabellen etc.
En dan dus nog de reden waarom ze linken, en dat kan weer onderverdeeld worden in personen/artiesten, plaatsen, optredens, nummers, etc.
je kan iets als wamp (windows apache mysql php) installeren (geen idee overigens of XAMPP hier al in voorziet..)quote:Op dinsdag 6 november 2007 22:24 schreef wc-eend het volgende:
Ik heb een php script, tis een simpel formulier dat opgestuurd wordt naar een email adres.. nu wil ik dat juist testen.. Ik heb XAMPP geinstalleerd en het formulier ziet er netjes uit maar hoe kan ik testen of ik idd ook dat mailtje krijg? Mijn eigen webspace ondersteunt geen php.. dus das geen optie..
Ik ben trouwens een php noob, het script is ook niet van mijzelf..
in dit geval kan je gewoon intval($var) gebruiken.quote:Op dinsdag 6 november 2007 23:01 schreef wobbel het volgende:
Ik heb een variable....
HK-2352
of
PC-1362
Hoe zorg ik ervoor dat alles voor de - weg wordt gehaald? (zijn altijd 3 tekens, PC- of HK- of CO-)
Volgensmij is er een functie waarmee je de eerste 3 karakters kan weglaten maar welke
Oh, ik dacht dat we het over grotere getallen hadden.quote:Op dinsdag 6 november 2007 22:05 schreef qu63 het volgende:
[..]
het zal zeker omvangrijk zijn, en helaas heb ik alleen de beschikking over MySQL
en omvangrijk zal zijn, zeker 2000 artiesten (minimaal) en dus links in maximaal 2 (A->B->Queen of A->Queen) stappen en de bijbehorende tabellen etc.
En dan dus nog de reden waarom ze linken, en dat kan weer onderverdeeld worden in personen/artiesten, plaatsen, optredens, nummers, etc.
explode() gebruiken met - als delimiter: http://nl3.php.net/manual/nl/function.explode.phpquote:Op dinsdag 6 november 2007 23:01 schreef wobbel het volgende:
Ik heb een variable....
HK-2352
of
PC-1362
Hoe zorg ik ervoor dat alles voor de - weg wordt gehaald? (zijn altijd 3 tekens, PC- of HK- of CO-)
Volgensmij is er een functie waarmee je de eerste 3 karakters kan weglaten maar welke
quote:Op dinsdag 6 november 2007 23:01 schreef wobbel het volgende:
Ik heb een variable....
HK-2352
of
PC-1362
Hoe zorg ik ervoor dat alles voor de - weg wordt gehaald? (zijn altijd 3 tekens, PC- of HK- of CO-)
Volgensmij is er een functie waarmee je de eerste 3 karakters kan weglaten maar welke
Ok die van de smtp ga ik vanmiddag uitzoeken na me werk, dat had ik idd namelijk niet gedaan, waardoor die dus niet werkt iddquote:Op woensdag 7 november 2007 00:15 schreef mschol het volgende:
[..]
je kan iets als wamp (windows apache mysql php) installeren (geen idee overigens of XAMPP hier al in voorziet..)
en dan het script in de root c.q. htdocs van je installatie zetten en deze benaderen via http://localhost/scriptnaam.php (let wel op 2 dingen:
1) apache moet draaien (duh)
2) stel in de php.ini (of in de installer of waar dan ook waar de php instellingen staan) als smtp_server de smtp server van je provider in
$var=implode(explode("-",$var);quote:Op dinsdag 6 november 2007 23:01 schreef wobbel het volgende:
Ik heb een variable....
HK-2352
of
PC-1362
Hoe zorg ik ervoor dat alles voor de - weg wordt gehaald? (zijn altijd 3 tekens, PC- of HK- of CO-)
Volgensmij is er een functie waarmee je de eerste 3 karakters kan weglaten maar welke
| 1 2 3 | header('Content-Disposition: attachment; filename="'.$filename.'.'.$extension.'"'); ?> |
quote:Op woensdag 7 november 2007 14:07 schreef Geqxon het volgende:
[ code verwijderd ]
Wat ik zoek: Als ik mijn PHP pagina oproep (get.php?filename=CV&extension=pdf), dan wil ik de PDF graag in de browser zelf geopend krijgen. Door aan te geven dat het een PDF-file is, en vervolgens een readfile op de desbetreffende PDF-file uit te voeren, lukt dat nu.
Wat mij niet lukt: Dat mensen het zien als "CV.pdf", in plaats van "get.php?filename=CV&extension=pdf". Dat kan met bovenstaande header, maar doordat hij het als attachement doorgeeft kan ik de PDF niet meer in de browser openen.
Is dit mogelijk? Dus én bovenstaande header (custom filename), én het PDF bestand in de browser zelf kunnen openen?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 | class mimetype { function getType($filename) { // get base name of the filename provided by user $filename = basename($filename); // break file into parts seperated by . $filename = explode('.', $filename); // take the last part of the file to get the file extension $filename = $filename[count($filename)-1]; // find mime type return $this->privFindType($filename); } function privFindType($ext) { // create mimetypes array $mimetypes = $this->privBuildMimeArray(); // return mime type for extension if (isset($mimetypes[$ext])) { return $mimetypes[$ext]; // if the extension wasn't found return octet-stream } else { return 'application/octet-stream'; } } function privBuildMimeArray() { return array( "ez" => "application/andrew-inset", "hqx" => "application/mac-binhex40", "cpt" => "application/mac-compactpro", "doc" => "application/msword", "bin" => "application/octet-stream", "dms" => "application/octet-stream", "lha" => "application/octet-stream", "lzh" => "application/octet-stream", "exe" => "application/octet-stream", "class" => "application/octet-stream", "so" => "application/octet-stream", "dll" => "application/octet-stream", "oda" => "application/oda", "pdf" => "application/pdf", "ai" => "application/postscript", "eps" => "application/postscript", "ps" => "application/postscript", "smi" => "application/smil", "smil" => "application/smil", "wbxml" => "application/vnd.wap.wbxml", "wmlc" => "application/vnd.wap.wmlc", "wmlsc" => "application/vnd.wap.wmlscriptc", "bcpio" => "application/x-bcpio", "vcd" => "application/x-cdlink", "pgn" => "application/x-chess-pgn", "cpio" => "application/x-cpio", "csh" => "application/x-csh", "dcr" => "application/x-director", "dir" => "application/x-director", "dxr" => "application/x-director", "dvi" => "application/x-dvi", "spl" => "application/x-futuresplash", "gtar" => "application/x-gtar", "hdf" => "application/x-hdf", "js" => "application/x-javascript", "skp" => "application/x-koan", "skd" => "application/x-koan", "skt" => "application/x-koan", "skm" => "application/x-koan", "latex" => "application/x-latex", "nc" => "application/x-netcdf", "cdf" => "application/x-netcdf", "sh" => "application/x-sh", "shar" => "application/x-shar", "swf" => "application/x-shockwave-flash", "sit" => "application/x-stuffit", "sv4cpio" => "application/x-sv4cpio", "sv4crc" => "application/x-sv4crc", "tar" => "application/x-tar", "tcl" => "application/x-tcl", "tex" => "application/x-tex", "texinfo" => "application/x-texinfo", "texi" => "application/x-texinfo", "t" => "application/x-troff", "tr" => "application/x-troff", "roff" => "application/x-troff", "man" => "application/x-troff-man", "me" => "application/x-troff-me", "ms" => "application/x-troff-ms", "ustar" => "application/x-ustar", "src" => "application/x-wais-source", "xhtml" => "application/xhtml+xml", "xht" => "application/xhtml+xml", "zip" => "application/zip", "au" => "audio/basic", "snd" => "audio/basic", "mid" => "audio/midi", "midi" => "audio/midi", "kar" => "audio/midi", "mpga" => "audio/mpeg", "mp2" => "audio/mpeg", "mp3" => "audio/mpeg", "aif" => "audio/x-aiff", "aiff" => "audio/x-aiff", "aifc" => "audio/x-aiff", "m3u" => "audio/x-mpegurl", "ram" => "audio/x-pn-realaudio", "rm" => "audio/x-pn-realaudio", "rpm" => "audio/x-pn-realaudio-plugin", "ra" => "audio/x-realaudio", "wav" => "audio/x-wav", "pdb" => "chemical/x-pdb", "xyz" => "chemical/x-xyz", "bmp" => "image/bmp", "gif" => "image/gif", "ief" => "image/ief", "jpeg" => "image/jpeg", "jpg" => "image/jpeg", "jpe" => "image/jpeg", "png" => "image/png", "tiff" => "image/tiff", "tif" => "image/tif", "djvu" => "image/vnd.djvu", "djv" => "image/vnd.djvu", "wbmp" => "image/vnd.wap.wbmp", "ras" => "image/x-cmu-raster", "pnm" => "image/x-portable-anymap", "pbm" => "image/x-portable-bitmap", "pgm" => "image/x-portable-graymap", "ppm" => "image/x-portable-pixmap", "rgb" => "image/x-rgb", "xbm" => "image/x-xbitmap", "xpm" => "image/x-xpixmap", "xwd" => "image/x-windowdump", "igs" => "model/iges", "iges" => "model/iges", "msh" => "model/mesh", "mesh" => "model/mesh", "silo" => "model/mesh", "wrl" => "model/vrml", "vrml" => "model/vrml", "css" => "text/css", "html" => "text/html", "htm" => "text/html", "asc" => "text/plain", "txt" => "text/plain", "rtx" => "text/richtext", "rtf" => "text/rtf", "sgml" => "text/sgml", "sgm" => "text/sgml", "tsv" => "text/tab-seperated-values", "wml" => "text/vnd.wap.wml", "wmls" => "text/vnd.wap.wmlscript", "etx" => "text/x-setext", "xml" => "text/xml", "xsl" => "text/xml", "mpeg" => "video/mpeg", "mpg" => "video/mpeg", "mpe" => "video/mpeg", "qt" => "video/quicktime", "mov" => "video/quicktime", "mxu" => "video/vnd.mpegurl", "avi" => "video/x-msvideo", "movie" => "video/x-sgi-movie", "ice" => "x-conference-xcooltalk" ); } } $mimetype = new mimetype; header('Content-type: ' . $mimetype->getType($file_name)); header('Content-Disposition: attachment; filename="' . $file_name . '"'); die(file_get_contents($file_name)); ?> |
| 1 2 3 | header('Content-Disposition: inline; filename="' . $file_name . '"'); ?> |
thanks!quote:Op dinsdag 6 november 2007 22:31 schreef beerten het volgende:
[knip]
Is het anders een optie mod_rewrite te gebruiken? De gebruiker surft dan bijvoorbeeld naar somepage.tld/yourfile.ext, en gaat dan intern naar somepage.tld/get.php?filename=yourfile&extension=ext.quote:Op woensdag 7 november 2007 14:26 schreef Geqxon het volgende:
Niet exactly wat ik zoek. Helaas is het niet mogelijk, las ik op Google.
[ code verwijderd ]
Dit zou perfect zijn, maar gaat helaas niet. Jammer
| 1 2 3 | Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:Program FilesxampphtdocsTESTcontact.php on line 108 ?> |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | // geef e-mail adres op van ontvanger $mail_ontv = "mijn@emailadres.nl"; // is niet 100% !!! function checkmail($mail) { $email_host = explode("@", $mail); $email_host = $email_host['1']; $email_resolved = gethostbyname($email_host); if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail)) $valid = 1; return $valid; } // als er niet op submit is gedrukt, of als er wel op is gedrukt maar niet alles ingevoerd is if (!$_POST['submit'] || $_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp'])) { if ($_POST['submit'] && (!$_POST['naam'] || !$_POST['mail'] || !checkmail($_POST['mail']) || !$_POST['msggs'] || !$_POST['onderwerp'])) { echo "Je bent je naam, e-mail adres, onderwerp of bericht vergeten in te vullen. Ook kan het zijn "; echo "dat je een verkeerd e-mail adres hebt ingevuld.<p>"; } // form + tabel echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"; echo "<form method=\"POST\" ACTION=\"" . $_SERVER['PHP_SELF'] . "\">"; // naam echo "<tr><td>Naam:</td></tr>"; echo "<tr><td><input type=\"text\" name=\"naam\" value=\"" . $_POST['naam'] . "\"></td></tr>"; // space echo "<tr><td> </td></tr>"; echo "<tr><td>E-mail adres:</td></tr>"; echo "<tr><td><input type=\"text\" name=\"mail\" value=\"" . $_POST['mail'] . "\"></td></tr>"; // space echo "<tr><td> </td></tr>"; echo "<tr><td>Onderwerp:</td></tr>"; echo "<tr><td><input type=\"text\" name=\"onderwerp\" value=\"" . $_POST['onderwerp'] . "\"></td></tr>"; // space echo "<tr><td> </td></tr>"; echo "<tr><td>Bericht:</td></tr>"; echo "<tr><td><TEXTAREA name=\"msggs\" ROWS=\"6\" COLS=\"45\">" . htmlentities($_POST['msggs']) . "</TEXTAREA></td></tr>"; // space echo "<tr><td> </td></tr>"; // button echo "<tr><td> </td></tr>"; echo "<tr><td><input type=\"submit\" name=\"submit\" value=\"Versturen\"></td></tr>"; // sluit form + tabel echo "</form>"; echo "</table>"; } // versturen naar else { // set datum $datum = date("d.m.Y H:i"); // set ip $ip = $_SERVER['REMOTE_ADDR']; $inhoud_mail = "===================================================\n"; $inhoud_mail .= "Ingevulde contact formulier\n"; $inhoud_mail .= "===================================================\n\n"; $inhoud_mail .= $_SERVER['SCRIPT_URI'] . "\n\n"; $inhoud_mail .= "Naam: " . $_POST['naam'] . "\n"; $inhoud_mail .= "E-mail adres: " . $_POST['mail'] . "\n"; $inhoud_mail .= "Bericht:\n"; $inhoud_mail .= $_POST['msggs'] . "\n\n"; $inhoud_mail .= "Verstuurd op " . $datum . " via het ip " . $ip . "\n\n"; $inhoud_mail .= "===================================================\n\n"; // -------------------- // spambot protectie // ------ // van de tutorial: http://www.phphulp.nl/php/tutorials/10/340/ // ------ $headers = "From: " . $_POST['naam'] . " <" . $_POST['mail'] . ">"; $headers = stripslashes($headers); $headers = str_replace("\n", "", $headers); // Verwijder \n $headers = str_replace("\r", "", $headers); // Verwijder \r $headers = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $headers)); // Slashes van quotes $_POST['onderwerp'] = str_replace("\n", "", $_POST['onderwerp']); // Verwijder \n $_POST['onderwerp'] = str_replace("\r", "", $_POST['onderwerp']); // Verwijder \r $_POST['onderwerp'] = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $_POST['onderwerp'])); // Slashes van quotes mail($mail_ontv, $_POST['onderwerp'], $inhoud_mail, $headers); echo "<h1>Je e-mail is verstuurd</h1>"; echo "<p>Bedankt voor het versturen van een e-mail. Je zult snel een antwoord "; echo "krijgen indien dit nodig is.</p>"; echo "<p>We nemen alles serieus en zullen vertrouwelijk omgaan met de informatie "; echo "die we binnen krijgen. Je e-mail adres zal nooit aan derden worden verstrekt.</p>"; } ?> |
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |