Ja natuurlijk.quote:Op woensdag 5 maart 2014 18:10 schreef KomtTijd... het volgende:
Had je al overwogen om te kijken wát er precies niet klopt aan je relatieve pad?
Nee, helaas.quote:
Goed, opnieuw:quote:Op woensdag 5 maart 2014 20:26 schreef KomtTijd... het volgende:
Maar je gaat verder niet vertellen wat er nou mis gaat?
Dan rest ons niets anders dan je veel succes te wensen met zoeken naar een oplossing!
1 2 3 4 | <?php define('THEMEROOT', get_stylesheet_directory_uri()); define ('IMAGES', THEMEROOT . '/wordpress/wp-content/themes/mytheme/images'); ?> |
1 2 | <img alt="WordPress Localhost | En nog een WordPress site" data-src="http://localhost/wordpress/wp-content/themes/mytheme/wordpress/wp-content/themes/mytheme/images/images/logo.png" style="visibility:hidden;"> |
1 2 | <img alt="WordPress Localhost | En nog een WordPress site" src="http://localhost/wordpress/wp-content/themes/mytheme/adaptive/images/images/logo.png"> |
Als dat het "Net" tabblad is waar jij het over hebt dan komt daar bovenaan bij logo.png een "404 Not Found" te staan.quote:Op woensdag 5 maart 2014 20:39 schreef Crutch het volgende:
Al in je netpanel gekeken welke url je browser daadwerkelijk opvraagt?
En hoe heb je het in je template staan?quote:Op woensdag 5 maart 2014 21:13 schreef karton2 het volgende:
[..]
Goed, opnieuw:
Ik heb een functions.php voor een wordpress theme waar ik wil aangeven in welke folder de afbeeldingen staan.
Het probleem is dat hij alleen de alt van de afbeelding laat zien en dus niet de afbeelding zelf, dus fout in het pad.
De php code die ik heb:
[ code verwijderd ]
Als ik met dat pad een afbeelding uit "images" absoluut maak pakt hij het direct op in de browser.
Kijk ik met firebug naar de code van de website krijg ik:
[ code verwijderd ]
Een totaal ander (dubbel) pad dan wat ik heb opgegeven.
Wat ik ook doe hij pakt de afbeelding niet op.
Als ik als bij wijze van test een korter (en zeker fout) pad opgeef: /mytheme/images/
doet hij exact hetzelfde: verdubbelen van het pad.
[ code verwijderd ]
Ik heb geen idee wat voor informatie ik je nog meer kan geven dan wat ik gepost heb.
[..]
Als dat het "Net" tabblad is waar jij het over hebt dan komt daar bovenaan bij logo.png een "404 Not Found" te staan.
De url achter die .png is "http://localhost/wordpress/wp-content/themes/mytheme/wordpress/wp-content/themes/mytheme/images/images/logo.png".
Krijg daar hetzelfde te zien als wat ik als reactie op KomtTijd heb geschreven.
1 | <img src="<?php echo IMAGES; ?>images/logo.png" /> |
Ja.quote:Op woensdag 5 maart 2014 21:47 schreef Crutch het volgende:
[..]
En hoe heb je het in je template staan?
[ code verwijderd ]
Zo?
1 2 | <a href="<?php echo home_url(); ?>"> <img src="<?php echo IMAGES; ?>/wordpress/wp-content/themes/mytheme/images/" alt="<?php bloginfo('name'); ?> | <?php bloginfo('description'); ?>" /></a> |
1 2 3 4 | <?php define('THEMEROOT', get_stylesheet_directory_uri()); //path to stylesheet and assigns it to THEMEROOT define('IMAGES', THEMEROOT .'/wordpress/wp-content/themes/adaptive/images/'); ?> |
1 2 | <img alt="WordPress Localhost | En nog een WordPress site" data-src="http://localhost/wordpress/wp-content/themes/mytheme/wordpress/wp-content/themes/mytheme/images/images/logo.png" style="visibility:hidden;"> |
1 2 3 4 5 6 | <?php exec('"c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe" -metric PSNR ' . $current . ' ' . $next . ' NULL:', $test); echo '5e: ' . print_r($test,true) . ';' . '</td><td>'; exec('"c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe" ' . $current . ' ' . $next . ' NULL:', $test); echo '6e: ' . print_r($test,true) . ';' . '</td><td>'; ?> |
quote:"c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe" -metric PSNR d:\photos\snapshots\2014
0228\snapshot-20140228225510-152.jpg d:\photos\snapshots\20140228\snapshot-20140228225500-152.jpg NULL
35.0194
Moet werken,quote:Op donderdag 6 maart 2014 09:27 schreef Darkomen het volgende:
Volgens mij kan je print_r niet in een echo gebruiken.
1 | 2014-03-06 09:27:47;389; 1e: 72.39%; 2e: 4; 3e: 88.5%; 5e: Array ( ) ; 6e: Array ( ) ; d:/photos/snapshots/20140228/snapshot-20140228225510-152.jpg; d:/photos/snapshots/20140228/snapshot-20140228225500-152.jpg; |
Jawel, daar is de tweede parameter voorquote:Op donderdag 6 maart 2014 09:27 schreef Darkomen het volgende:
Volgens mij kan je print_r niet in een echo gebruiken.
Hoeft niet hoor, daar leer je weer vanquote:Op donderdag 6 maart 2014 09:41 schreef Darkomen het volgende:
mybad, daarom hou ik ook meestal mn mond in dit topic
1 2 3 4 5 6 7 | <?php $cmd = '"c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe -metric PSNR d:\photos\snapshots\20140228\snapshot-20140228225510-152.jpg d:\photos\snapshots\20140228\snapshot-20140228225500-152.jpg NULL:"'; // $cmd = str_replace("\\", "/", $cmd); echo exec('%SystemRoot%\system32\cmd.exe ' . $cmd, $output, $err); echo exec($cmd); exit; ?> |
Correct, dat idd niet, maar als ik het zo aanpas.quote:Op donderdag 6 maart 2014 10:34 schreef KomtTijd... het volgende:
En die dubbele aanhalingstekens? Horen er ook bij? Sorry ik heb echt de ballen verstand van windows hoor.
1 | "c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe" -metric PSNR d:\photos\snapshots\20140228\snapshot-20140228225510-152.jpg d:\photos\snapshots\20140228\snapshot-20140228225500-152.jpg NULL: |
Dat dacht ik eerst ook, maar geeft totaal geen verschilquote:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php $cmd = 'echo "c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe" -metric PSNR d:\photos\snapshots\20140228\snapshot-20140228225510-152.jpg d:\photos\snapshots\20140228\snapshot-20140228225500-152.jpg NULL:'; $cmd = str_replace("\\", "\\\\", $cmd); echo exec('%SystemRoot%\system32\cmd.exe ' . $cmd, $output, $err); echo exec($cmd); foreach ($output as $item){ print_r($item); } echo '<hr>'; foreach ($err as $item){ print_r($item); } ?> |
1 2 3 | D:\www>"c:\\Program Files\\ImageMagick-6.8.8-Q16\\compare.exe" -metric PSNR d:\\photos\\snapshots\\20140228\\snapshot-20140228225510-152.jpg d:\\photos\\snapshots\\20140228\\snapshot-20140228225500-152.jpg NULL:Microsoft Windows [versie 6.1.7601]Copyright (c) 2009 Microsoft Corporation. Alle rechten voorbehouden.D:\www> Warning: Invalid argument supplied for foreach() in D:\www\exectest.php on line 11 <!-- ignore :P |
1 2 3 | D:\www>Microsoft Windows [versie 6.1.7601]Copyright (c) 2009 Microsoft Corporation. Alle rechten voorbehouden.D:\www> Warning: Invalid argument supplied for foreach() in D:\www\exectest.php on line 11 |
1 2 3 | <?php echo exec('"c:\Program Files\ImageMagick-6.8.8-Q16\compare.exe" -metric PSNR d:\photos\snapshots\20140228\snapshot-20140228225510-152.jpg d:\photos\snapshots\20140228\snapshot-20140228225500-152.jpg NULL: >2&1'); ?> |
Wil je dan niet liever: http://www.php.net/manual/en/function.realpath.php gebruiken? Maak je geen fouten enzo.. vet kek!!quote:
1 | $test = "voorbeeld"; |
1 2 3 4 5 6 7 | class Person { var $name; function __construct($init_name) { $this->name = $init_name; } |
1 | $init_name = $this->name; |
1 2 3 4 5 | <?php function getInitName(){ return $this->name; } ?> |
Je draait daar de assignment om? Nu wijs je de (lege) inhoud van de class property toe aan een lokale variabele. In php is $this altijd nodig als je binnen de class één van zijn properties wil wijzigen. In andere talen zoals C++ of Java is de this pointer alleen noodzakelijk als een lokale variabele dezelfde naam heeft als de property.quote:Op donderdag 6 maart 2014 15:38 schreef Robuustheid het volgende:
Waarom kan het dan niet zo als volgt?
[ code verwijderd ]
Klopt, daar heb ik ook al even naar gekeken maar dacht eerst maar eens de system call proberenquote:Op donderdag 6 maart 2014 12:35 schreef slacker_nl het volgende:
[..]
Wil je dan niet liever: http://www.php.net/manual/en/function.realpath.php gebruiken? Maak je geen fouten enzo.. vet kek!!
En je hebt ook:
http://www.php.net/manual/en/imagick.compareimagechannels.php
http://www.php.net/manual/en/imagick.compareimagelayers.php
http://www.php.net/manual/en/imagick.compareimages.php
Heb je geen system calls voor nodig.
Waarom zou het beter zijn om een expliciete visibility er aan te geven?quote:Op donderdag 6 maart 2014 16:30 schreef zoem het volgende:
Btw: de class properties kun je beter een expliciete visibility geven (public, protected, private) ipv 'var' (=public). Var stamt nog uit de tijd van php 4.
$this verwijst naar eigenschappen van het object, en met :: verwijs je naar eigenschappen van de class. Het grote verschil is dat je voor dat laatste geen instance van de class nodig hebt.quote:Op donderdag 6 maart 2014 21:11 schreef Robuustheid het volgende:
Nog een vraag. Waarom worden erScope resolution operator gebruikt in plaats van een pointer als $this-> ?
De scope resolution operator (::) refereert dus naar constanten en statics. Maar waarom kan dat niet gewoon met $this?
Dit is makkelijker te overzien als je de code plaatstquote:Op donderdag 6 maart 2014 22:38 schreef Andijvie_ het volgende:
Hallo ik heb een site gemaakt waar ik een tabel had welke de waarde liet zien welke ingevoerd werd door de gebruiker en na bevestiging te zien is in een tabel, alleen heb ik een nieuw ''map' aangemaakt en de bestanden gekopieerd en geplakt en de database gegevens veranderd, waar eigenlijk alle ingevoerde waarden dus al verwijderd moeten zijn en dus alles op 0 staat en fris eruit moet zien (nieuw), echter zie ik in 1 tabel op een specifiek pagina nog steeds de waarden van wat er in het verleden is ingevoerd. Als ik naar de SQL bestanden kijk in phpmyadmin dan zijn er 0 waarden ingevoerd...
hoe kan ik dit oplossen?
P.S; als ik op een waarde klik (de waarde bevat een link naar de pagina met de gegevens van de waarde) dan krijg ik ''ID in de URL komt niet overeen met onze database''' wat echter correct is, maar de oude database waarden worden echter wel in de vorige pagina getoond van een andere map in htdocs (bijv test1, terwijl de nieuwe site in test2 zit), terwijl dat niet eens de bedoeling is
quote:Op donderdag 6 maart 2014 22:40 schreef totalvamp het volgende:
[..]
Dit is makkelijker te overzien als je de code plaatst
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 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 | <?php include './init.php'; if (empty($_GET['markt'])){ } else { $markt_id = $_GET['markt']; } if (empty($_GET['zoeken'])){ } else { $zoeken = $_GET['zoeken']; header("Location: zoeken.php?zoeken=$zoeken"); } if (empty($_POST) === false) { $required_fields = array('cijfer','reactie'); foreach($_POST as $key=>$value){ if (empty($value) && in_array($key, $required_fields) == true){ $errors[] = 'Alle velden zijn verplicht!'; break 1; } } if (empty($errors) === true) { $user_data_name = $user_data["user_username"]; if (check_name_reacties($user_data_name) === true) { $errors[] = 'Je mag maar 1X reageeren per markt'; } if (logged_in() === false) { $errors[] = 'Login om een reactie te plaatsen'; } if (strlen($_POST['reactie']) < 20) { $errors[] = 'De reactie moet minimaal 20 tekens lang zijn'; } if (strlen($_POST['reactie']) > 250) { $errors[] = 'De reactie mag niet langer zijn dan 250 tekens'; } if (empty($_POST) === false && empty($errors) === true) { $date = date("d-m-Y"); $reactie = $_POST['reactie']; $reactie = nl2br($reactie); $reactie = stripslashes($reactie); $reactie_data = array( 'reactie_voor' => $markt_id, 'reactie_user' => $user_data["user_username"], 'reactie_inhoud' => $reactie, 'reactie_tijd' => $date, 'reactie_voor_naam' => $markt_data["markten_naam"] ); reactie_post($reactie_data); } } } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Marktreview.nl</title> <!-- css --> <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css"> <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css" rel="stylesheet"> <link rel="stylesheet" href="css/custom.css"> <!-- /css --> </head> <body> <nav class="navbar navbar-default" role="navigation"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> <span class="sr-only">Open navigatiebalk</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="./index.php" style="width: 250px; height: 25px;"> <img src='./images/logo.png' height="32"> </a> </div> <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> <ul class='nav navbar-nav'> <li> <a href='index.php'> <i class="fa fa-home"></i> Startpagina </a> </li> <li class="active"> <a href='./markt.php'> <i class="fa fa-calendar"></i> Alle markten </a> </li> <li class='dropdown'> <a href='/shop'> <i class="fa fa-envelope"></i> Contact </a> </li> <li> <a href='./disclaimer.php'> <i class="fa fa-calendar"></i> Disclaimer </a> </li> </ul> <ul class="nav navbar-nav navbar-right"> <li class="dropdown"> <?php if (logged_in() === false) { echo '<a data-toggle="dropdown"><i class="fa fa-user"></i> <b class="caret"></b></a> <ul class="dropdown-menu" role="menu" aria-labelledby="Acc"> <li><a href="./login.php">Login</a></li> <li><a href="./register.php">Register</a></li> </ul>'; } else { echo '<a data-toggle="dropdown"><i class="fa fa-user"></i> <b class="caret"></b></a> <ul class="dropdown-menu" role="menu" aria-labelledby="Acc"> <li><a href="#">change password</a></li> <li><a href="./logout.php">logout</a></li> </ul>'; }?> </li> </ul> </div> </div> </nav> <div class="row"> <div class="col-md-1 fixed"> <center> <div class="well well-sm" style="background-color: rgba(255,255,255,0.4); border: rgba(255,255,255,0.4); box-shadow: 10px 10px 5px #610000;"> <a href="http://www.fb.com" style="color:#3B5998;"><i class="fa fa-facebook fa-4x"></a></i><br> <a href="http://www.twitter.com" style="color:#1BB2E9;"><i class="fa fa-twitter fa-4x"></a></i> </div> </center> </div> </div> <div class="container"> <?php if (empty($errors) === false) { echo output_errors($errors); }?> <div class="row"> <div class="col-md-8"> <div class="well well-sm"> <?php if (empty($_GET['markt'])){ echo ' <form class="form-inline" action"zoeken.php" methode="post"> <div class="form-group has-error"> <input type="text" class="col-xs-2 form-control" id="zoeken" name="zoeken" placeholder="zoek"> <button type="submit" class="btn btn-danger">zoek</button> <a href="./markt.php?filter=naam" type="button" class="btn btn-danger">filter op naam</a> <a href="./markt.php?filter=provincie" type="button" class="btn btn-danger">filter op provincie</a> <a href="./markt.php?filter=stad" type="button" class="btn btn-danger">filter op stad</a> <a href="./markt.php" type="button" class="btn btn-danger">geen filter</a><br><br> </div> </form> <table class="table table-striped table-bordered"> <thead> <tr> <td>Naam</td> <td>Provincie</td> <td>Stad</td> <td>Organisator</td> <td>Type</td> </tr> </thead> <tbody> <tr>'; if (empty($_GET["filter"])){ include 'list_nofilter.php'; } else { $filter_input = $_GET["filter"]; $filter_1 = 'naam'; $filter_2 = 'provincie'; $filter_3 = 'stad'; if(strpos($filter_input, $filter_1) !== false){ include 'list_name.php'; } if(strpos($filter_input, $filter_2) !== false){ include 'list_provincie.php'; } if(strpos($filter_input, $filter_3) !== false){ include 'list_stad.php'; } } echo ' </tr> </tbody> </table> </div>'; } else { if (markt_exists($markt_id) === true) { echo' <h2> ' . $markt_data["markten_naam"] . ' - ' . $cijfer_data["cijfer_totaal"] . ' </h2> naam:<b> ' . $markt_data["markten_naam"] . '</b><br> provincie:<b> ' . $markt_data["markten_provincie"] . '</b><br> stad:<b> ' . $markt_data["markten_stad"] . '</b><br> dagen aanwezig:<b> ' . $markt_data["markten_dag1"] . ', ' . $markt_data["markten_dag2"] . '</b><br> type markt:<b> ' . $markt_data["markten_type"] . '</b> <h2> Cijfers </h2> Totaal:<b> ' . $cijfer_data["cijfer_totaal"] . '</b><br> Algemeen:<b> ' . $cijfer_data["cijfer_algemeen"] . '</b><br> Klantvriendelijkheid:<b> ' . $cijfer_data["cijfer_klantvriendelijkheid"] . '</b><br> service:<b> ' . $cijfer_data["cijfer_service"] . '</b><br> prijs:<b> ' . $cijfer_data["cijfer_prijs"] . '</b><br> kwaliteit:<b> ' . $cijfer_data["cijfer_kwaliteit"] . '</b><br> hygiene:<b> ' . $cijfer_data["cijfer_hygiene"] . '</b><br> presentatie:<b> ' . $cijfer_data["cijfer_presentatie"] . '</b><br> product:<b> ' . $cijfer_data["cijfer_product"] . '</b><br> <a href="http://localhost/update/cijfer.php?markt=' . $markt_id . '">geef een cijfer</a> </div> <div class="well well-sm"> <h2> Reviews </h2> <hr> '; $result = mysql_query("SELECT * FROM site_reacties WHERE reactie_voor = '$markt_id'"); if ($result) { if (mysql_num_rows($result) == 0){ echo 'er zijn nog geen reacties geplaatst! <hr>'; } else { while($row = mysql_fetch_array($result)){ echo '<div style="background-color:#E6E6E6;><p class="text-left">reactie door:' . $row["reactie_user"] . '</p><p class="text-center">' . $row["reactie_inhoud"] . '</p><p class="text-right">geplaatst op: ' . $row["reactie_tijd"] . '</p></div><hr>'; } } } echo ' <form role="forum" method="post" action"">'; $reactie_voor = $markt_id; $reactie_user = $user_data["id"]; echo ' <textarea class="form-control" id="reactie" name="reactie" rows="3" maxlength="250" placeholder="Geef een revieuw over deze markt"></textarea><br> <br><button type="submit" class="btn btn-danger">plaats</button> </form> </div>'; } else { echo'Markt ID in de URL komt niet overeen met een markt in onze database </div>'; } } ?> </div> <div class="col-md-4"> <?php if (logged_in() === false) { echo ' <div class="well well-sm"> <form role="form" method="post" action="login_pc.php"> <div class="form-group"> <input type="text" class="form-control" id="username" name="username" placeholder="Voer hier uw gebruikersnaam in"> </div> <div class="form-group"> <input type="password" class="form-control" id="password" name="password" placeholder="Voer hier uw wachtwoord in"> </div> <div class="form-group"> <button type="submit" class="btn btn-default">Inloggen</button> </div> </form> <hr> <a href="./register.php">Nog geen lid?</a> <br> <a href="./changepassword.php?type=Offline">wachtwoord vergeten</a><br> <a href="./markttoevoegen.php">Markt toevoegen</a> <br> </div>'; } else { echo ' <div class="well well-sm"> <p> welkom, ' . $user_data["user_name"] . '.<br> </p> <hr> log uit <br> <a href="./markttoevoegen.php">Markt toevoegen</a><br> </div>'; }?> </div> </div> </div> <!-- JS --> <script data-src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js" style="visibility:hidden;"></script> <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script> <!-- /js --> </body> </html> |
Succesquote:Op donderdag 6 maart 2014 22:40 schreef totalvamp het volgende:
[..]
Dit is makkelijker te overzien als je de code plaatst
quote:Op donderdag 6 maart 2014 22:40 schreef totalvamp het volgende:
[..]
Dit is makkelijker te overzien als je de code plaatst
Nou het probleem is als volgt;quote:Op donderdag 6 maart 2014 22:39 schreef ludicrous_monk het volgende:
Ik snap geen fuck van je OP. Over wat voor map en bestanden heb je het?
Ik weiger tijd te steken in code waar de programmeur duidelijk ook geen tijd in heeft gestoken.quote:
Hier kan ik niks in terugvinden over de database verbindingen.quote:
quote:donderdag 6 maart 2014 22:46 schreef CrashO het volgende:[/b]
[..]
Ik weiger tijd te steken in code waar de programmeur duidelijk ook geen tijd in heeft gestoken.
De helft is voorzien van tabs en de andere helft is getabt als een randdebiel. Copy pastes van code blokken?En zie ik daar een regelmatig een echo van 20 regels?
En dat hele gedoe is nog een ranzige crosspost ook
![]()
Dan heb je nog nooit ergens gewerkt waar ze het concept OOP nog niet kenden...quote:Op donderdag 6 maart 2014 22:57 schreef zoem het volgende:
De lap code is zo groot en onduidelijk dat het ondoenlijk is om het te debuggen. Twee keer knipperen met je ogen en je bent een uur verder.
Wordpress?quote:Op donderdag 6 maart 2014 22:58 schreef totalvamp het volgende:
Dan heb je nog nooit ergens gewerkt waar ze het concept OOP nog niet kenden...
Duizenden regels binnen dezelfde file is wel treurig inderdaad. Dan wordt het tijd voor een stevige refactorquote:Op donderdag 6 maart 2014 22:58 schreef totalvamp het volgende:
Dan heb je nog nooit ergens gewerkt waar ze het concept OOP nog niet kenden...
een keer een index.php gezien van ongeveer 3000 regels aan code, dit is niks vergeleken dat xD
Deze code is alleen nutteloos om te een oplossing te komen, aangezien we niet zien waar de data vandaan komt.
Neequote:
Dit, vandaar ook dat ik ernaar vroeg.quote:Op donderdag 6 maart 2014 23:05 schreef CrashO het volgende:
Btw.
Om toch OT te blijven (en zonder die crap code van Andijvie_ door te lezen) Wanneer je de database gevens aangepast hebt (en een schone tabel... ) is het gewoon onmogelijk om oude gevens te krijgen. Of je hebt de db info niet aangepast, of het komt niet uit de tabel, of je hebt gewoon de oude tabel gekopieërd en laat die info zien.
Dus los van eventuele code.
Andijvie is momenteel actief in zijn crosspost topic. Waar hij al 2x gereageert heeft (sinds de laatste 9 replies in dit topic)quote:Op donderdag 6 maart 2014 23:07 schreef totalvamp het volgende:
Ik zou andijvie ook aanraden met classes te leren werken
Misschien kan het slecht tegen kritiek. Maar zonder het complete script kunnen we sowieso niet helpen.quote:Op donderdag 6 maart 2014 23:10 schreef CrashO het volgende:
[..]
Andijvie is momenteel actief in zijn crosspost topic. Waar hij al 2x gereageert heeft (sinds de laatste 9 replies in dit topic)
Helaas wel... Als ik code van mezelf van 4 jaar terug bekijk schaam ik me ervoor. Uiteindelijk ga ik het wel herbouwen maar kost gewoon erg veel tijd en blijft daardoor lang liggen.quote:
Hmm. Als ik een simpele form action heb dan ga ik echt niet alle klassen autoloaden. Dan doe ik alleen de benodigde klassen.quote:Op donderdag 6 maart 2014 23:03 schreef zoem het volgende:
Tegenwoordig zou handmatig includen amper meer nodig hoeven te zijn met een (psr-0) autoloader. Mijn handen gaat altijd jeuken als ik spaghetti zie. Ach ja, iedereen is zo begonnen.
Met een autoloader laadt je sowieso nooit meer dan nodig, dat is het voordeel ervan.quote:Op zaterdag 8 maart 2014 18:15 schreef robin007bond het volgende:
[..]
Hmm. Als ik een simpele form action heb dan ga ik echt niet alle klassen autoloaden. Dan doe ik alleen de benodigde klassen.
Oh, dat wist ik eerlijk gezegd niet. Mooi.quote:Op zaterdag 8 maart 2014 18:17 schreef totalvamp het volgende:
[..]
Met een autoloader laadt je sowieso nooit meer dan nodig, dat is het voordeel ervan.
Zo heb ik 10 jaar geleden voor mijn sportvereniging een wedstrijdprogramma geschreven voor het jaarlijkse toernooi, ik heb in een overeenkomst laten vastleggen dat het niet mag worden verspreid. Puur omdat ik niet wil dat anderen die code zienquote:Op zaterdag 8 maart 2014 17:36 schreef bondage het volgende:
[..]
Helaas wel... Als ik code van mezelf van 4 jaar terug bekijk schaam ik me ervoor. Uiteindelijk ga ik het wel herbouwen maar kost gewoon erg veel tijd en blijft daardoor lang liggen.
Om het moment dat een object wordt gecreëerd en php de class niet kan vinden wordt de autoloader-functie aangesproken. Je kunt daar je eigen functie(s) aan koppelen die op basis van de classnaam de juiste file opzoekt en deze include. Op deze manier worden dus alleen de bestanden geinclude die daadwerkelijk nodig zijn. De term psr-0 slaat op de autloader-standaard, zodat niet iedereen zijn eigen constructie gaat bedenken.quote:Op zaterdag 8 maart 2014 18:24 schreef robin007bond het volgende:
[..]
Oh, dat wist ik eerlijk gezegd niet. Mooi.
Helder. Ik heb het al even doorgenomen. Erg handig.quote:Op zaterdag 8 maart 2014 19:39 schreef zoem het volgende:
[..]
Om het moment dat een object wordt gecreëerd en php de class niet kan vinden wordt de autoloader-functie aangesproken. Je kunt daar je eigen functie(s) aan koppelen die op basis van de classnaam de juiste file opzoekt en deze include. Op deze manier worden dus alleen de bestanden geinclude die daadwerkelijk nodig zijn. De term psr-0 slaat op de autloader-standaard, zodat niet iedereen zijn eigen constructie gaat bedenken.
http://www.php-fig.org/psr/psr-0/quote:Op zaterdag 8 maart 2014 20:06 schreef robin007bond het volgende:
[..]
Helder. Ik heb het al even doorgenomen. Erg handig.
Thanks.quote:Op zaterdag 8 maart 2014 20:15 schreef Boze_Appel het volgende:
[..]
http://www.php-fig.org/psr/psr-0/
Beter dan die github-link. (want meteen linkjes naar de andere psr's)
Zo even snel uit mijn hoofd:quote:Op maandag 10 maart 2014 13:04 schreef DannyDeko het volgende:
Ik heb weer een vraagstukje waar ik niet uit kom:
Ik wil een lijst maken met daarin alle spelers die in een bepaalde tijd voor slechts 1 club hebben gespeeld, en ook hoeveel wedstrijden ze voor die club hebben gespeeld.
De tabel "participation" is opgebouwd uit de volgende kolommen: "gameID,clubID,playerID,minuteIn,minuteOut"
Naar mijn idee zou ik dus voor elke speler het aantal clubs waar die voor gespeeld heeft moeten tellen en daarna een WHERE ....... < 2 er in gooien zodat enkel de spelers overblijven die slechts voor 1 club gespeeld hebben.
Maar ik krijg het simpelweg niet voor elkaar om per playerID het aantal clubs weer te geven.
Hier een voorbeeld van een speler die dus voor meerdere clubs heeft gespeeld:
(gameID,clubID,playerID,minuteIn,minuteOut)
570,20,1317,78,90,8
1225,2,1317,1,90,8
Hoop dat iemand me een zetje in de goede richting kan geven
1 2 3 4 | SELECT playerID FROM participation GROUP BY playerID HAVING COUNT(clubID) < 2 |
Edit: Werkt toch niet helaas. Die query telt welke playerID's slechts 1 wedstrijd gespeeld hebben, ipv hoeveel wedstrijd voor slechts 1 club.quote:Op maandag 10 maart 2014 13:08 schreef Rockfire het volgende:
[..]
Zo even snel uit mijn hoofd:
[ code verwijderd ]
1 2 3 4 | SELECT p.name, count(p.name) AS games, part.clubID, count(DISTINCT clubID) AS clubs FROM person p JOIN participation part ON part.playerID = p.personID GROUP BY p.name |
quote:Op maandag 10 maart 2014 13:19 schreef DannyDeko het volgende:
[..]
Edit: Werkt toch niet helaas. Die query telt welke playerID's slechts 1 wedstrijd gespeeld hebben, ipv hoeveel wedstrijd voor slechts 1 club.
1 2 3 4 | SELECT playerID FROM participation GROUP BY playerID HAVING COUNT(DISTINCT(clubID)) < 2 |
Je kunt geen aggregate functie zoals COUNT combineren met WHERE. Daarvoor is HAVING uitgevonden.quote:Op maandag 10 maart 2014 13:19 schreef DannyDeko het volgende:
Edit 2:
Met de volgende code heb ik kunnen tellen voor hoeveel clubs ze hebben gespeeld, alleen nu het selecteren van alleen diegene die bij "clubs" 1 hebben.
"WHERE count(DISTINCT clubID) = 1" mag helaas niet :p
Ik mis tests en ik ben zeker geen fan van je shell execution in je PHP script, volgens mij heb je daar al dingen voor. Verder zou ik je mimetype anders opvragen:quote:Op maandag 10 maart 2014 07:58 schreef Chandler het volgende:
Iemand ervaring met het uitzoeken van verschillen in afbeeldingen (motion detection) m.b.v. php ?
Ik ben nu meerdere classes aan het testen (gevonden op't internet) en imagemagick maar moet zeggen dat ik op dit moment nog niet echt heel tevreden ben met de resultaten dus zou ik willen weten of hier er al mensen mee hebben gespeeld?
Classes:
http://www.phpclasses.org(...)hey-are-similar.html
http://www.robert-lerner.com/imagecompare.php
Mijn gecombineerde versie:
http://pastebin.com/x6sZ1YFU
Resultaten
http://pastebin.com/VSdQUtLJ (nog niet klaar, draait nog steeds). (Je kunt er weinig mee aangezien ik zelf de plaatjes wel kan zien en het zo kan vergelijken.. of de waarden juist zijn.). Tot nu toe is de waarde 4 het meest accuraat (exec met imagemagick) maar als script doet de 2e functie anders ook goed zijn werk (resultaat vs snelheid)
Anyone?
1 2 3 4 | SELECT p.name, average(SUM(part.minuteOut-part.minuteIn),count(*)) FROM person p JOIN participation part ON p.personID = part.playerID GROUP BY p.name |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |