Even snelquote:Op vrijdag 25 april 2008 10:25 schreef Flipper01 het volgende:
Ik wil een archief maken van alle nieuwsberichten geordend per maand. Ik heb nu in MySQL een kolom datum waarin de datum als DATETIME wordt weergegeven. Ik wil nu graag het volgende resultaat bereiken:
- 2008
januari (2)
april (1)
mei (8)
.....
Hoe kan ik dit voor elkaar krijgen?
1 2 3 | FROM posts GROUP BY MONTH(datumkolom) |
Ik heb hem wat aangepast, zie deze link die je verder kan helpenquote:Op vrijdag 25 april 2008 10:38 schreef Flipper01 het volgende:
Waarvoor dient DATEPART en kan ik dit ook op een linux server gebruiken?
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 | #create a sql backup and send it to your e-mail address //define settings //database host DEFINE('dbhost','localhost'); //database name DEFINE('dbnaam','dbnaam'); //database user DEFINE('dbuser','dbuser'); //database passwordt DEFINE('dbpass','dbpass'); //domeinnaam DEFINE('domein','domein.nl'); //doel DEFINE('email','backup@domein.nl'); //connect with database $link = mysql_connect(dbhost,dbuser,dbpass) or die('No datbase conection could be establised'); mysql_select_db(dbnaam,$link) or die('No datbase selected'); //query to recive table names $query = mysql_query('SHOW TABLE STATUS') or die(mysql_error()); $sql_backup = ''; //whileloop to loop trough every table while($row = mysql_fetch_assoc($query)) { //show sql query to rebuild the query $sql = 'SHOW CREATE TABLE '.$row['Name'].''; //exucte error or give a error $query2 = mysql_query($sql) or die(mysql_error()); //create sql $sql_backup.="\r\n#Create table ".$row['Name']."\r\n\r\n"; $out = mysql_fetch_assoc($query2); $sql_backup.=$out['Create Table'].";\r\n\r\n"; $sql_backup.="#Dump data\r\n\r\n"; //SQL code to select everything for table $sql = 'SELECT * FROM '.$row['Name']; $out = mysql_query($sql); $sql_code = ''; //loop trough the colloms while($code = mysql_fetch_array($out,MYSQL_ASSOC)) { $sql_code .= "INSERT INTO ".$row['Name']." SET "; foreach($code as $insert => $value) { $sql_code.=$insert ."='".addslashes($value)."',"; } $sql_code = substr($sql_code, 0, -1); $sql_code.= ";\r\n"; } $sql_backup.= $sql_code; } //generade a unique id $unique = md5(uniqid(time())); //message $message = "Backup procedure van database: ".dbnaam." is met succes verlopen. U vind in de bijlage een backup van de inhoud gemaakt op. ".date('d-m-Y H:i:s')."\r\n Autobot"; //maak headers aan //form header $headers = "From: Autobot <noreply@".domein.">\r\n"; //terug sturen naar een niet bestaand mail adress (noreply@domein.nl) $headers .= "Reply-To: Autobot <noreply@".domein.">\r\n"; //vertel dat het een mine versie is $headers .= "MIME-Version: 1.0\r\n"; //email bestaat uit meerdere bestanden dus vertel wat de scheidings teken is en dat het een multipart is $headers .= "Content-Type: multipart/mixed; boundary=\"".$unique."\"\r\n"; //we zenden een attachment mee $headers .= "Content-Disposition: attachment\r\n"; //generenen een body. Dit is een multi part gezeik $body.= "This is a multi-part message in MIME format.\r\n"; $body.= "\r\n"; //boundary $body.= "--".$unique."\r\n"; //content type + charater set (iso in dit geval) $body.= "Content-Type: text/plain; charset=iso-8859-1\r\n"; //codering (7 bit) $body.= "Content-Transfer-Encoding: 7bit\r\n"; $body.= "\r\n"; //het bericht $body.= $message ."\r\n"; //boundaty $body.= "--".$unique."\r\n"; //content type + naam bestand (database.sql) $body .= "Content-Type: application/octet-stream; name=database.sql\r\n"; //codering $body .= "Content-Transfer-Encoding: base64\r\n"; //als bijlage toegevoegd $body.= "Content-disposition: attachment\r\n"; $body .= "\n"; //de inhoud van het bestand $body .= chunk_split(base64_encode($sql_backup)) . "\r\n"; //zet alles op email! //hier kan wat tijdsverschil in zitten! mail(email,'Mysql backup '.date('d-m-Y H:i:s'),$body,$headers); ?> |
1 2 3 4 5 | JOIN SHOP_Products_Lang ON SHOP_Products_Lang.ProductId = SHOP_Products.IdProduct JOIN SHOP_Afbeeldingen ON SHOP_Afbeeldingen.ProductId = SHOP_Products.IdProduct WHERE SHOP_Products.SubcategoryId = '1' AND SHOP_Products_Lang.LanguageId = '1' |
Sorry voor m'n n00b vragen.. :$quote:Op vrijdag 25 april 2008 10:41 schreef JortK het volgende:
Ik heb hem wat aangepast, zie deze link die je verder kan helpen
En op wat voor server maakt niet uit natuurlijk
1 2 3 | $query = "SELECT *, DATE_FORMAT(datum, '%d') AS dag, DATE_FORMAT(datum, '%c') AS maand, DATE_FORMAT(datum, '%Y') AS jaar, DATE_FORMAT(datum, '%H:%i') AS tijd FROM weblog ORDER BY -datum LIMIT 0,8"; ?> |
Daar doet MySQL niet moeilijk over.quote:Op vrijdag 25 april 2008 22:02 schreef Arjan321 het volgende:
In principe is de syntax "INNER JOIN", niet "JOIN". Weet niet of mysql daar moeilijk over doet.
Ja, ik heb in SHOP_Afbeeldingen 1 record met ProductId = 1quote:Op vrijdag 25 april 2008 22:02 schreef Arjan321 het volgende:
In principe is de syntax "INNER JOIN", niet "JOIN". Weet niet of mysql daar moeilijk over doet.
Weet je zeker dat er in alle 3 de tabellen de juiste gegevens staan?
Probeer eens LEFT JOIN ipv gewoon JOIN.quote:Op vrijdag 25 april 2008 18:18 schreef wobbel het volgende:
Ik wil nu alle producten met SubcategoryId = 1 weergeven, en daarbij ook alle data uit Products_Lang en Afbeeldingen die hetzelfde product ID hebben.
De tabel SHOP_Afbeeldingen hoeft niet perse records te hebben met hetzelfde ProductIDquote:Op zaterdag 26 april 2008 13:27 schreef Farenji het volgende:
[..]
Probeer eens LEFT JOIN ipv gewoon JOIN.
Ja, daarom juist! Daarom krijg je met een INNER JOIN geen resultaten!!quote:Op zaterdag 26 april 2008 13:52 schreef wobbel het volgende:
[..]
De tabel SHOP_Afbeeldingen hoeft niet perse records te hebben met hetzelfde ProductID
Hehequote:Op zaterdag 26 april 2008 14:03 schreef Farenji het volgende:
[..]
Ja, daarom juist! Daarom krijg je met een INNER JOIN geen resultaten!!
1 2 3 4 | $datum = date_create('NOW'); echo $datum; ?> |
Ooi van het datatype datetime gehoord in MySQL?quote:Op zondag 27 april 2008 11:35 schreef Flipper01 het volgende:
Hoe kan ik de huidige tijd als DateTime in een string zetten? Dit ivm het plaatsen in MySQL.
Ik heb nu het volgende:
[ code verwijderd ]
Maar krijg een foutmelding..
1 2 3 | $datum = date("Y-m-d H:i:s"); ?> |
Hoe kan ik da huidige tijd hierin krijgen als ik m'n tabel op de volgende manier aanvul:quote:Op zondag 27 april 2008 11:39 schreef JortK het volgende:
Ooi van het datatype datetime gehoord in MySQL?
1 2 3 4 5 6 7 | $query = "INSERT INTO weblog_reactie (weblogid, naam, email, website, tekst, ip, spam, datum) VALUES ('$formId', '$formNaam', '$formEmail', '$formWebsite', '$formTekst', '$_SERVER[REMOTE_ADDR]', 'spam', 'NOW')"; mysql_query($query) or die (mysql_error()); ?> |
Dit zocht ik!quote:Op zondag 27 april 2008 11:44 schreef Farenji het volgende:
De functie date_create geeft en DateTime object terug, dus geen string. Ik vind dit echt weer zo'n typische vage php implementatie, gaat ook wel lekker tegen alle verwachting en conventies in maar dat zijn we gewend van php.
Als je gewoon een string wil hebben die in een mysql datetime past, dan zou ik het simpel doen met date:
[ code verwijderd ]
Dat geeft dus iets terug als "2008-04-27 11:44:25".
http://nl3.php.net/manual/en/function.date.php
1 |
1 |
1 2 3 4 | $visitorIp = $_SERVER['REMOTE_ADDR']; $queryRetreiveIp = mysql_query("SELECT * FROM result WHERE poll_id = $pollId AND ip = $visitorIp ") or die("queryRetreiveIp ".mysql_error()); ?> |
1 2 3 4 | $visitorIp = $_SERVER['REMOTE_ADDR']; $queryRetreiveIp = mysql_query("SELECT * FROM result WHERE poll_id = '" . mysql_real_escape_string($pollId) . "' AND ip = "' . mysql_real_escape_string($visitorIp) . "' ") or die("queryRetreiveIp ".mysql_error()); ?> |
Even een vraag die aansluit op hetvolgende:quote:Op donderdag 24 april 2008 18:46 schreef Piles het volgende:
Even kort vraagje: hoe kun je dmv php checken of een site online is? Dus even proberen om een connectie te maken, zo niet: mailtje sturen. Dit wil ik namelijk graag in een cron job hebben (uiteraard op andere host)
Opgelost: file() doet wat ik wil
Hoe vaak staan deze fopen_wrappers uit (bij bijvoorbeeld hosters)? Ik doel dan op allow_url_fopen aangezien je deze niet via ini_set() kan setten voor zover ik de documentatie lees.quote:A URL can be used as a filename with this function if the fopen wrappers have been enabled. See fopen() for more details on how to specify the filename and List of Supported Protocols/Wrappers for a list of supported URL protocols.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |