Voor zover ik weet kan dat niet zomaar; er is in ieder geval erg weinig op Google over te vinden.quote:Op vrijdag 9 juni 2006 13:01 schreef Darkomen het volgende:
Vraagje, ik weet dat je met php pdf files kan maken, maar kan je ook aan een bestaande pdf een wachtwoord toevoegen doormiddel van php?
1 2 3 4 5 6 7 8 9 10 11 12 | php mysql_connect("localhost", "root", ""); mysql_select_db("plaatsen"); $result = mysql_query("SELECT * FROM tbl_plaats ORDER BY starttijd ASC") or die("FUCKING ERROR"); while($row = mysql_fetch_row($result)) { echo "nijmegen: ".$row[1]."<br/>"; } ?> |
En wat is de relatie tussen die 2 tabellen?quote:Op maandag 12 juni 2006 12:31 schreef boebiedoe het volgende:
Mensen, ik heb een php script waarbij hij uit 1 tabel data haalt er neerkalkt, maar nu wil ik dat hij tweede row uit een andere tabel ernaast zet. Dus 2 rijen met gegevens.
[ code verwijderd ]
Iemand?!
quote:Op maandag 12 juni 2006 12:31 schreef boebiedoe het volgende:
Mensen, ik heb een php script waarbij hij uit 1 tabel data haalt er neerkalkt, maar nu wil ik dat hij tweede row uit een andere tabel ernaast zet. Dus 2 rijen met gegevens.
[ code verwijderd ]
Iemand?!
1 2 3 4 5 6 7 8 9 | $i = 0; echo '<tr>'; while($row = mysql_fetch_row($result)) { echo '<td>'.htmlspecialchars($row[1]).'</td>'; if(++%i % 2 == 0) echo '</tr><tr>'; } echo '</tr>'; ?> |
kzie het. Dan wordt het float:leftenquote:Op maandag 12 juni 2006 16:31 schreef JeRa het volgende:
@Roonaan
Dat is niet de bedoeling. Hij wil een tweede kolom met data uit een andere tabel. Wat jij doet is de beschikbare data verspreiden over twee kolommen.
of eerst de data uit de tabellen trekken en daarna pas de output genererenquote:Op maandag 12 juni 2006 16:43 schreef Swetsenegger het volgende:
of met een join in 1 query de data eruit trekken.
Dat zeg ikquote:Op maandag 12 juni 2006 17:46 schreef DionysuZ het volgende:
[..]
of eerst de data uit de tabellen trekken en daarna pas de output genereren
Het is te warm om diep na te denkenquote:Op maandag 12 juni 2006 20:22 schreef Roönaän het volgende:
Nog geen php golf-8 topic?
Helemaal mee eensquote:Op dinsdag 13 juni 2006 16:15 schreef Swetsenegger het volgende:
[..]
Het is te warm om diep na te denken
Ik heb 't oude topic ff een schop gegeven.quote:Op maandag 12 juni 2006 20:22 schreef Roönaän het volgende:
Nog geen php golf-8 topic?
Je geeft in de url, welke door iedereen in zijn browser natuurlijk vrij te veranderen is, gegevens mee welke je in je script gebruikt.quote:Op woensdag 14 juni 2006 19:47 schreef super-muffin het volgende:
Wat heb je nu precies gedaan en hoe zorg ik er voor dat je het niet meer kan doen?
Wat dacht je van een standaard style gebruiken?quote:Op woensdag 14 juni 2006 20:56 schreef super-muffin het volgende:
En wat moet 'ie doen als #style is wat ik verwacht en wat als het iets anders is?
1 2 3 4 5 | $style = $_GET['style']; if (!in_array($style, $allowedStyles)) { $style = $allowedStyles[0]; } |
Kwestie van keuze. Een switch is vaak overzichtelijker dan een ifquote:En waarom switch gebruiken en geen if?
Tuurlijk begin meteen met array'squote:Op woensdag 14 juni 2006 20:59 schreef JeRa het volgende:
[..]
Wat dacht je van een standaard style gebruiken?bijvoorbeeld zo:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 | switch($style){ case 'blauw': //blauw enzo break; //etc default: //als het geen van de case's is break; } ?> |
Ik vind een switch meestal fijner werken. Inderdaad doordat het overzichtelijker is.quote:[..]
Kwestie van keuze. Een switch is vaak overzichtelijker dan een if
Zoals de rest zegt.quote:Op woensdag 14 juni 2006 20:56 schreef super-muffin het volgende:
En wat moet 'ie doen als $style is wat ik verwacht en wat als het iets anders is?
En waarom switch gebruiken en geen if?
Dan kan korterquote:Op woensdag 14 juni 2006 20:59 schreef JeRa het volgende:
[..]
Wat dacht je van een standaard style gebruiken?bijvoorbeeld zo:
[ code verwijderd ]
En in dit geval heeft een array mijn voorkeur boven een switch, gewoon omdat je een array makkelijk in een los configbestand kunt zetten en dan alleen die maar hoeft aan te passen als er een nieuwe stijl bij komt.quote:$allowedStyles = array('rood', 'groen');
$style = ( !in_array($_GET['style'], $allowedStyles) ) ? $_GET['style'] : $allowedStyles[0];
quote:Op woensdag 14 juni 2006 22:38 schreef Light het volgende:
[..]
Dan kan korter
[..]
En in dit geval heeft een array mijn voorkeur boven een switch, gewoon omdat je een array makkelijk in een los configbestand kunt zetten en dan alleen die maar hoeft aan te passen als er een nieuwe stijl bij komt.
1 2 3 4 5 6 7 8 9 | $var = (conditie) : '1' ? '2'; // hetzelfde als if(conditie){ $var = '1'; } else { $var = '2'; } ?> |
Ctrl-C, Ctrl-Vquote:Op woensdag 14 juni 2006 22:41 schreef JeRa het volgende:
[..]
Weet ik, maar dan moet ik twee keer $_GET typen en daar heb ik een hekel aan
Wow, dat scheelt 1 toetsaanslagquote:Op woensdag 14 juni 2006 23:54 schreef Roönaän het volgende:
$_G<enter>
De code is:quote:SELECT * FROM Auto WHERE NOT EXISTS (SELECT AutoID FROM Verhuur WHERE Terugbrengdatum => 2006-06-15)
1 2 | Terugbrengdatum => $datum)"; |
Volgens mij heten die dingen subqueries http://dev.mysql.com/doc/refman/5.0/en/subqueries.htmlquote:Op donderdag 15 juni 2006 22:47 schreef LeeHarveyOswald het volgende:
Ik wil een query binnen een query uitvoeren, maar hoe ding dit ook al weer in SQL?
Als ik de query (die geen errors geeft) nu print, is dit wat er staat:
[..]
De code is:
[ code verwijderd ]
In de tabel Auto staat Volvo C70 met ID 1. De tabel verhuur is leeg.
Iemand een idee hoe dit werkend te krijgen?![]()
Subqueries, maar die werken pas vanaf MySQL 5.quote:Op donderdag 15 juni 2006 22:47 schreef LeeHarveyOswald het volgende:
Ik wil een query binnen een query uitvoeren, maar hoe ding dit ook al weer in SQL?
Als ik de query (die geen errors geeft) nu print, is dit wat er staat:
[..]
De code is:
[ code verwijderd ]
In de tabel Auto staat Volvo C70 met ID 1. De tabel verhuur is leeg.
Iemand een idee hoe dit werkend te krijgen?![]()
1 2 3 4 5 | FROM Auto a LEFT JOIN Verhuur v ON a.id = v.AutoID WHERE v.AutoID IS NULL AND v.Terugbrengdatum > '$datum' |
In dit geval kan het inderdaad ook makkelijk met een join in plaats van de subquery. De versie met "where not exists(...)" vertelt wel duidelijker wat er gebeurt.quote:Op donderdag 15 juni 2006 23:15 schreef JeRa het volgende:
Waarom een subquery? Daar zijn JOINs voor:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | elseif (!eregi $email) else { $datum = date("Y-m-d"); include ("my_config.php"); @mysql_select_db("web") or die ("kon geen database selecteren"); $query = "INSERT INTO nieuwsbrief SET naam='$naam', emailadres='$email', datum='$datum', actief='no'"; $result = mysql_query($query); $query2 = "SELECT ID FROM nieuwsbrief WHERE randid='$randid' AND emailadres= '$email'"; $result2 = mysql_query($query2); if ($result) {echo "u ontvangt een email waarmee u uw aanmelding kan voltooien<br/>"; while (list($id) = mysql_fetch_row($result2)) { echo $id;}} else {echo "Uw emailadres is al opgenomen in de database.";}} |
Dank je wel dat deed de truc!quote:Op donderdag 15 juni 2006 23:29 schreef Swetsenegger het volgende:
$id=mysql_insert_id();
1 2 3 | $result = mysql_query($query); if ($result) {echo "U heeft zich succesvol aangemeld! Binnenkort ontvangt u onze nieuwsbrief."; |
1 2 3 4 5 6 7 | $query = "UPDATE nieuwsbrief SET actief='yes' WHERE ID=".$mail_id; $result = mysql_query($query); if ($result) { echo "U heeft zich succesvol aangemeld! Binnenkort ontvangt u onze nieuwsbrief."; } ?> |
1 2 3 | ButtonBar("entry uit database dat geedit of gedelete mag worden", EDIT | DEL); ?> |
1 2 3 4 5 6 7 8 9 | function ButtonBar($string, $flags) { print $string; if ( ($flags & EDIT) == EDIT) print ("[ <a href=\"edit.php\">wijzig</a> ]"); if ( ($flags & DEL) == DEL) print ("[ <a href=\"delete.php\">delete</a> ]"); } ?> |
En dit is me login verwerken script:quote:</style></head>
<html>
<body>
<p>
<h3>Login</h3><br>
</p>
<form action="login-verwerken.php" method="post">
user name: <input type="text" name="username">
<br>
password : <input type="text" name="wachtwoord">
<br>
<br>
<input type="submit" value="Versturen">
</form>
</body>
</html>
quote:<html>
<?php
$host="localhost";
$user="root";
$password="";
$database="leden";
mysql_connect($host,$user,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query = ("select username, wachtwoord FROM leden WHERE username='$_POST[username]' AND wachtwoord='$_POST[wachtwoord]'");
$resultaat= mysql_query($query) or die ("Sorry inloggen niet succesvol");
if(mysql_affected_rows()==0){
exit();
}
else{
$user = $_POST['username'];
session_start();
$_SESSION['username'] = $user;
$_SESSION['counter'] = 0;
header('Location: Index.php');
}
?>
</html>
veranderquote:Op zaterdag 17 juni 2006 15:52 schreef Ajaxfan het volgende:
Ik ben bezig met een simpel login script. Het is me al gelukt om een registratie te laten verwerken in een Mysql database. Alleen nu is het dus de bedoeling dat hij de username en het wachtwoord uit de database haalt. Ik krijg dan de melding die je krijgt als de connectie met de database mislukt is: Sorry kan niet inloggen dus. Ik heb zelf geen idee waar het aan ligt.
Dit is mijn login script:
[..]
En dit is me login verwerken script:
[..]
1 |
1 |
Constants zijn per definitie globals in PHP, dus ik heb echt geen idee waarom het niet zou werkenquote:Op zaterdag 17 juni 2006 15:11 schreef Lynx666 het volgende:
even een PHP only vraag:
Aan het begin van m'n script define ik enkele constants:
[ code verwijderd ]
Deze waardes wil ik gebruiken voor een simpele button bar, kan ik per entry bepalen welke acties erop uitgevoerd mogen worden, gebruik makend van bitwise operators, even versimpeld:
[ code verwijderd ]
Deze moet achter de string de 2 knoppen voor editen en deleten weergeven. De functie ButtonBar controleert de flags als volgt (versimpeld):
[ code verwijderd ]
Probleem is, m'n logs spugen "Use of undefined constant [..]" notices uit, en als ik EDIT of DEL echo dan laat het doodleuk "EDIT" of "DEL" zien in plaats van hun vooraf gedefineerde waardes...
Voor zover ik het begrijp zouden defined constants global te gebruiken moeten zijn dus ook in functies als ButtonBar. Zie ik nu iets over het hoofd dat het script niet werkt zoals het zou moeten?
Dat dacht ik dus ookquote:Op zaterdag 17 juni 2006 18:19 schreef JeRa het volgende:
[..]
Constants zijn per definitie globals in PHP, dus ik heb echt geen idee waarom het niet zou werkenonder welke PHP-versie draait het? Staat de functie in een aparte include?
Als je geen verbinding met de database kunt krijgen zal geen enkele query werkenquote:Op zaterdag 17 juni 2006 19:17 schreef Ajaxfan het volgende:
Ik heb die tip van jou geprobeerd Lynx maar nog steeds blijf ik die melding krijgen.![]()
Die text schrijf je waarschijnlijk naar de afbeelding met de functie imagefttext(), niet? Nou, met imageftbbox() kun je de bounding box (en dus o.a. de breedte) opvragenquote:Op zondag 18 juni 2006 01:57 schreef guitarist.nl het volgende:
[afbeelding]ik heb een marquee gemaakt met php & gd, maar je moet de positie van de text in pixels geven, met een statische text is het geen probleem, maar ik wil iets maken met een dynamische text, hoe moet ik de breedte van een string berekenen??
thanks a lotquote:Op zondag 18 juni 2006 11:29 schreef JeRa het volgende:
@Oldbie
Ja, zo is het prima. Zet de SQL export compatibility nog wel even op de versie van MySQL waar je database op gaat draaien, en zet een vinkje bij opslaan (beneden) zodat je ook daadwerkelijk een bestand krijgt
1 2 3 4 5 6 7 8 | FROM news n LEFT JOIN accounts a ON n.author_id = a.id LEFT JOIN comments c ON n.id = comments.news_id WHERE c.deleted = 0 GROUP BY n.id ORDER BY n.id DESC LIMIT 0, 10 |
1 2 3 4 5 6 7 8 9 10 | FROM news INNER JOIN accounts ON news.author_id=accounts.id INNER JOIN comments ON news.id=comments.news_id WHERE news.deleted=0 GROUP BY news.id ORDER BY news.timestamp DESC LIMIT 0, 10 |
Zo deed ik het eerder ook, maar het leek me 'juister' om die info met een count eruit te halen....quote:Op zondag 18 juni 2006 18:42 schreef JeRa het volgende:
Maar het lijkt me slimmer om gewoon een counter bij te houden in de news-tabel met het aantal reacties ipv telkens een extra JOIN en GROUP BY te doen
Even simpel gezegd: je koppelt tabel a aan tabel b. Met een LEFT JOIN wordt tabel a altijd aan tabel b gekoppeld, ook als er geen verbinding is met tabel b. Dan krijg je NULL-waarden terug voor de kolommen in tabel b. Met een INNER JOIN krijg je alléén de rijen terug waarvoor de ON-clausule kloptquote:Op zondag 18 juni 2006 18:54 schreef Lynx666 het volgende:
Waar jij LEFT JOINs gebruikt heb ik er INNER JOINs staan.. Wat is het wezenlijke verschil daartussen?
Het is ook juister, maar performancetechnisch is het gewoon een stuk sneller om een apart veld bij te houden dat je op bepaalde momenten update (nieuwe comment, comment verwijderen, etc).quote:[..]
Zo deed ik het eerder ook, maar het leek me 'juister' om die info met een count eruit te halen....
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 | $i_width = 60; $i_height = 60; $string = "Hello World, This is an test!"; $pointsize = 11; $font = "./tahoma.ttf"; $im = imagecreate($i_width, $i_height); $black = imagecolorallocate ($im, 0, 0, 0); $string_size = ImageFtBbox($pointsize, 0, $font, $string, array("linespacing" => 1)); $s_width = $string_size[4]; $s_height = $string_size[5]; $y = round($s_width/4);// $y = stringbreedte / 4 $img0 = ImageCreateFromGIF("guitarist.nl.gif"); for ($i = 0; $i <= $y; $i++) { $img[$i] = ImageCreateFromGIF("guitarist.nl.gif"); $red = imageColorAllocate($img[$i], 255, 153, 0); $math = $i_width-($i*4); // $s_ .. is string $i_... is image ImageFtText($img[$i], $pointsize, 0, $math, 0 - $s_height, $red, $font, $string, array("linespacing" => 1)); } en nog een hele hoop code :") ?> |
Geen idee, maar om goed engels te gebruiken moet het zijn: "Hello world, this is a test"quote:Op zondag 18 juni 2006 23:26 schreef guitarist.nl het volgende:
[afbeelding]Ik heb een plaatje van 60px breed, waar ik een text door wil laten scrollen.
Hij begint op 60 (zodat je de text niet ziet) en hij moet scrollen (van rechts naar links) tot dat de text weer uit beeld is, hij verschuift 4px per frame!!
Hij berekend de breedte van de text!!
De huidige code:
[ code verwijderd ]
Ik gok dat je de breedte van het plaatje er nog bij moet optellenquote:Op zondag 18 juni 2006 23:34 schreef guitarist.nl het volgende:
Het is te laat om te rekenen, morgen weer
Duidelijk, thnxquote:Op zondag 18 juni 2006 20:36 schreef JeRa het volgende:
[..]
Even simpel gezegd: je koppelt tabel a aan tabel b. Met een LEFT JOIN wordt tabel a altijd aan tabel b gekoppeld, ook als er geen verbinding is met tabel b. Dan krijg je NULL-waarden terug voor de kolommen in tabel b. Met een INNER JOIN krijg je alléén de rijen terug waarvoor de ON-clausule kloptdus als een rij in tabel b niet bestaat (bv. een useraccount) dan krijg je de bijbehorende rij in tabel a ook niet terug.
ID veld is idd auto_increment, maar wil wel nieuwsberichten kunnen schedulen. Niet elke gepost bericht krijgt dus de timestamp time() mee. Vandaar de timestamp sorteringquote:[..]
Overigens, als je id-veld uit de 'news'-tabel een AUTO_INCREMENT is en dus dezelfde sortering heeft als news.timestamp, dan kun je net zo goed (zoals in mijn query) sorteren op news.iddat is toch al een PRIMARY KEY, en zolang je niet wilt zoeken op de timestamp scheelt dat weer een index (en de daarbij benodigde indexupdates).
waar bij optellenquote:Op zondag 18 juni 2006 23:48 schreef JeRa het volgende:
[..]
Ik gok dat je de breedte van het plaatje er nog bij moet optellen
Hij moet nog 60px verder doorscrollen, maar niet 60 eerder beginnenquote:Op zondag 18 juni 2006 23:45 schreef SuperRembo het volgende:
@guitarist.nl
Wat is je vraag nou eigenlijk?
Waarmee / hoe maak je dat animated gifje?
Bij de totale breedte van de stringquote:
Ja maar hij moet ook ehm ergens beginnen, niet op 0 iigquote:Op zondag 18 juni 2006 23:52 schreef JeRa het volgende:
[..]
Bij de totale breedte van de stringde scrollafstand van die string moet namelijk (breedte string + 2 * breedte plaatje) zijn om te scrollen zoals jij wilt
plaats dan es het hele scriptjequote:Op zondag 18 juni 2006 23:51 schreef guitarist.nl het volgende:
[..]
Hij moet nog 60px verder doorscrollen, maar niet 60 eerder beginnen
van een scriptje van een kammeraad
Internic.net ?quote:Op maandag 19 juni 2006 09:52 schreef Desdinova het volgende:
weet iemand misschien wie de SIDN-variant is van de .com domeinen?
Ook goedquote:Op maandag 19 juni 2006 12:01 schreef Tijn het volgende:
[..]
Volgens mij wordt het tegenwoordig door het ICANN geregeld.
Gevonden.quote:Op maandag 19 juni 2006 12:09 schreef Tijn het volgende:
Ja, InterNIC deed die dingen vroeger. Volgens mij bestaat het ook nog wel, maar is het tegenwoordig onderdeel van het ICANN.
1 |
1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | $a = array( ":)" , ":(" , ":|" ); $b = array( '<img src="smilies/blij.gif" alt="blij"/>', '<img src="smilies/nietzoblij.gif" alt="niet zo blij"/>', '<img src="smilies/zwaardepressief.gif" alt="zwaar depressief"/>' ); $output = str_replace($a,$b, $string); ?> |
Je hebt geluk dat ik mijn wachtwoord altijd vergeet en dus op moet zoekenquote:Op maandag 19 juni 2006 13:50 schreef ViPeRII het volgende:
Ik was eerder ;-)
1 2 3 4 5 | $txt = preg_replace("#\[image thumb=\"(*.?)\" prefix=\"(*.?)\" fw=\"(*.?)\" fn=\"(*.?)\" \/\]#sie", make_table('$1','$2','$3','$4'), $txt); ?> |
De str_replace werkt natuurlijk prima, alleen zou ik het doen bij het uitlezen van het bericht.quote:Op maandag 19 juni 2006 13:42 schreef timbastiaansen het volgende:
Ik zoek een functie om een deel van een variabele te vervangen, ik ben namelijk een gastenboek aan het maken en daarbij heeft hij dus een $bericht die hij in een database schrijft, nu wilt ik dat hij bijvoorbeeld
[ code verwijderd ]
vervangt door
[ code verwijderd ]
is hier een speciale code voor of niet??
het is (.*?) en niet (*.?)quote:Op maandag 19 juni 2006 15:34 schreef Lynx666 het volgende:
Ik knal weer tegen een probleem aan..
[ code verwijderd ]
Hiermee wil ik met elke "[image thumb="data" prefix="data" fw="data" fn="data" /]" dat in een stuk tekst voorkomt een tabelletje plaatsen met make_table() m.b.v. de gegeven data fields.
Nu laat mn error log dit zien: PHP Warning: preg_replace(): Compilation failed: nothing to repeat at offset 20 in <php file> on line 78
waarbij line 78 bovenstaande regel is..
Wat klopt er niet aan mijn preg_replace (wat niet meer dan een uitbouwing is van een kortere, wél werkende preg_replace) ??
Ik denk dat dat ook makkelijker is, scheelt ook weer ruimte in de database nl.quote:Op maandag 19 juni 2006 16:31 schreef Swetsenegger het volgende:
[..]
De str_replace werkt natuurlijk prima, alleen zou ik het doen bij het uitlezen van het bericht.
Dus je schrijft de userinput gewoon naar DB en bij uitlezen zet je code om naar smilies.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |