Cronjob.php neemt geen zelf gemaakte catogerieën mee

Status
Niet open voor verdere reacties.
Ok? en hoe moet dat. Met alleen een i erachter zetten zal ik er nog niet zijn denk ik.
 
Klopt, je zult soms een extra parameter moeten meegeven voor de connectie die je gebruikt. Of een andere functie moeten gebruiken.
Zo is er nu bij MySQLi maar één enkele functie nodig voor de connectie en het openen van de juiste database: mysqli_connect(). Voorheen had je voor het openen een aparte functie genaamd mysql_select_db(), maar dat is nu niet meer gelukkig.

Tevens kan je ook direct kiezen om MySQL in OO op te bouwen met objecten. Ikzelf geef hier de voorkeur voor, omdat je die functies eenvoudig kan aanpassen en uitbreiden (met bijv. ingebouwde foutafhandeling).

http://php.net/mysqli_query
http://php.net/mysql_real_escape_string
http://php.net/mysqli_fetch_assoc

Zijn een aantal functies die je op PHP.net kan raadplegen, ook de andere functies van MySQLi staat er uitvoerig in beschreven.
 
Laatst bewerkt:
Ik denk dat het nu allemaal een beetje begint te duizelen bij mij.
Van PHP heb ik niet veel verstand en dan is de tekst en uitleg ook nog in het Engels waardoor ik er nog maar de helft van begrijp.
Wat en waar zou ik nu als eerste moeten beginnen?
Of zijn er op het forum ook mensen die er voor mij naar willen kijken.
 
Ik zou alle mysql_*******() functies eerst maar eens ombouwen naar mysqli_*******() functies. Per PHP 7 zal de oude manier niet meer werken.
 
Ik heb nu alles veranderd naar mysqli in cronjob.php vervolgens kreeg ik de melding (use mysqli or PDO) met een verwijzing naar parser.php.
In parser.php heb ik ook alles veranderd naar mysqli, kreeg vervolgens weer dezelde met een verwijzing naar config.php hier ook alles veranderd.
Nu krijg ik de melding:

PHP Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /home/deb/domains/fwdb.nl/public_html/controller/config.php on line 51

Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /home/deb/domains/fwdb.nl/public_html/controller/config.php on line 51


In regel 51 in config.php staat

mysqli_select_db($config['database'], $db);


Wat zou ik hier moeten veranderen?
 
Zo is er nu bij MySQLi maar één enkele functie nodig voor de connectie en het openen van de juiste database: mysqli_connect(). Voorheen had je voor het openen een aparte functie genaamd mysql_select_db(), maar dat is nu niet meer gelukkig.
Tenzij je twee databases gebruikt, maar daar ga ik niet vanuit.
 
Nee ik gebruik maar 1 database, dus deze regel kan ik verwijderen?
 
Alles was nu wel v/d site verdwenen dus alle feeds worden wel verwijderd maar nog niet opnieuw ingeladen.
Ik zal de betreffende regel verwijderen en na de backup kijken wat er gebeurt.
 
Ik neem aan dat je niet 'live' in productie werkt, en alles op een test-database uitvoert.
 
Ik probeer alles uit op de nu werkende site, dat is dus schijnbaar niet de bedoeling. Wat kan dit voor nadelen hebben.
 
Als het stuk is, dan is het stuk.
Script draait niet meer, bezoekers krijgen foutmeldingen die ze niet snappen, je hebt mogelijk geen backup.....
 
Ik heb al een hoop foutmeldingen opgelost (althans ik kreeg steeds weer een andere foutmelding dus ik ga er van uit dat voorgaande zijn opgelost)
Nu krijg ik een fout waar ik niet weet wat ik er mee moet doen.
PHP Parse error: syntax error, unexpected 'setlocale' (T_STRING) in /home/deb/domains/fwdb.nl/public_html/controller/config.php on line 61

Zo ziet mijn config.php er nu uit.

<?php

$config['dbhost'] = "localhost";
$config['dbuser'] = "deb";
$config['dbpass']= "";
$config['database']="";
$config['siteurl']="http://www.fwdb.nl/";
$config['username']="";
$config['password']="";
$config['sitetitle'] ='Alles voor uw fiets';
$config['subtitle'] =' Fietsen - Onderdelen - Accessoires - Gereedschap ';
$config['socialtwitter'] ='https://twitter.com/';
$config['socialfacebook'] ='https://www.facebook.com/';
$config['socialgoogle'] ='https://plus.google.com//posts';
$config['socialrss'] ='';


/*
change color pallete
*/

$color_palete= array(
'zwart' => '#000817',
'groen'=>'#2d7801',
'blauw'=> '#222a69',
'rood'=> '#9f1802',
'bruin'=> '#462525',
'geel'=> 'yellow',
'roze' => 'pink'
,'paars'=> '#684969'
,'beige'=> 'beige'
,'grijs' => '#847383'
,'wit' => 'white'
,'diversen' => 'multicolor'
,'goud' => 'gold'
,'zilver' => '#E5E9F1'
,'oranje' => 'orange'
,'cognac'=>'#9f381d'
);


/*
*/





$connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
if (!$connection) {
die("Database connection failed: " . mysqli_connect_error()




/**
* to fix some encoding issue
* $text(string)
* @return text
*/
setlocale(LC_ALL, 'en_US.UTF8');
function toAscii($str, $replace=array(), $delimiter=' ') {
$clean = iconv('UTF-8', 'ASCII//TRANSLIT', $str);
$clean = preg_replace("/[^a-zA-Z0-9\/_|+ -]/", '', $clean);
$clean = preg_replace("/[\/_|+ -]+/", $delimiter, $clean);
if( !empty($replace) ) {
$str = str_replace((array)$replace, ' ', $str);
}

return $clean;
}



function detail($row){
global $config;
$dest = $row['title_slug'].'.htm';
$dest = str_replace(array(' ','/'),'-',$dest);
return $dest = $config['siteurl'].$dest;
}

/**
fix foutmeldingen met sessies
*/


ob_start(); error_reporting(0);

?>
 
Er mist een ; na je die(.......) erboven.
 
Die ; heb ik verwijderd ik kreeg de foutmelding Parse error: syntax error, unexpected ';' in /home
Bij andere van dat soort meldingen heb ik soms ook wat verwijderd ( en soms ook dingen veranderd zoals in sommige beschrijvingen werd aangeraden)
 
Je moet niet altijd doen wat de parser zegt. Maar logisch kijken rond de lijnen.
Gebruik een goede editor die syntax-fouten aangeeft.
 
Ik heb Netbeans op mijn computer gezet, is dat een goede editor.
Zit hier ook een controle functie op deze heb ik nog kunnen vinden.
 
Ik heb Netbeans op mijn computer gezet, is dat een goede editor.
Zit hier ook een controle functie op deze heb ik nog kunnen vinden.
Dat heet code-highlighting, en dat kent elke editor wel. Ook kan je de PHP-executable instellen zodat je direct je script kan uittesten.
 
Ik heb Netbeans inmiddels weer verwijderd. Ik had het van de officiele site gehaald, maar ik kreeg sindsdien allemaal meldingen van mijn virusscanner.
Ik had wel een beetje Netbeans kunnen verkennen maar voor een leek is het niet echt makkelijk, je moet er een cursus voor volgen om te weten hoe het programma werkt en dan moet je ook nog verstand van PHP hebben.
Zijn er ook mensen op het helpmij.nl/forum die voor mij willen kijken waar de fout zit
 
Vast en zeker een false-positive. Ik heb nergens last van. En zo ingewikkeld werkt het niet. Maar er zijn zat editors die ook code-highlighting hebben.

Logisch kijken naar de kleurtjes in de code en de fout haal je er zo uit.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan