overgestap van wamp 2,5 naar 3,06 heb errors

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Remco nvt

Remco nvt

16/10/2017 09:00:46
Quote Anchor link
Als je localhost gebruikt pak dan even een phpinfo() pagina en kijk of:
mysqli.default_socket en pdo_mysql.default_socket misschien niet leeg zijn.

Deze moet je namelijk dan invullen.
Als je mysql een verbinding met localhost laat opzetten dan gebruikt hij dus een socket.

"When using localhost as the destination in a client connector interface of an application, the MySQL application programming interface connects to the database using a Unix domain socket, while a TCP connection via the loopback address requires the direct use of the explicit address."
 
PHP hulp

PHP hulp

24/11/2024 03:21:47
 
Ben van Velzen

Ben van Velzen

16/10/2017 11:14:07
Quote Anchor link
Klinkt leuk, maar is in het geval van WAMP of XAMPP niet relevant. Windows kent geen unix style sockets.
 
Ronald E

Ronald E

16/10/2017 12:00:15
Quote Anchor link
ik heb me probleem gevonden en heb de links naar de andere server uit kunnen zetten. en nu staat mysql weer op poort 3306

maar omdat ik nu veel in het script hem moeten aanpassen naar mysqli_connect en zo heb ik nog niet kunnen vinden hoe ik naar de database terug kan schrijven nu heb ik nog

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
include('counter/db.php');
$site = "een website";
$keuze = "site";
$link = mysqli_connect($host, $dbnaam, $dbww, $db_name);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
$sql= mysqli_query($link,"SELECT ".$keuze.", COUNT(".$keuze.")  FROM counter WHERE site='".$site."' GROUP BY ".$keuze."" ) ;
while ( $rij = mysqli_fetch_array( $sql ) ) {


echo "Bezoeker </br>".$rij['COUNT('.$keuze.')'];
}
 
- Ariën  -
Beheerder

- Ariën -

16/10/2017 12:14:05
Quote Anchor link
INSERT INTO
UPDATE ... SET

Om maar wat basis-mogelijkheden van SQL op te noemen.
 
Thomas van den Heuvel

Thomas van den Heuvel

16/10/2017 14:37:13
Quote Anchor link
@Ronald In zekere zin bega je opnieuw eenzelfde fout.

Voorheen stond er overal in je scripts:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
appelVla($a, $b);


Nu appelVla() is komen te vervallen vervang je alle voorkomens door:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
perenVla($b, $a);

Maar wat als dit nu opnieuw verandert?

Wat nu als je perenVla($b, $a) vervangt door mijnVla($a, $b) en je deze functie als volgt definieert:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
function mijnVla($a, $b) {
    perenVla($b, $a);
}

En vervolgens dus overal mijnVla($a, $b) gebruikt, en blijft gebruiken.

Dan, wanneer er iets in toetjesland verandert, hoef je (in een ideale situatie) slechts één regel code aan te passen in plaats van (opnieuw) alle voorkomens van je vla-functies te veranderen / te zoeken en te vervangen.

Concreet: het is onverstandig om functies die op een database opereren op deze manier te hardcorden (rechtstreeks mysqli-functies en -methoden gebruiken). Het alternatief wat ik voorstel dekt natuurlijk niet alles maar als je een implementatie van een bepaalde functionaliteit wilt wijzigen dan hoef je dat op de bovenstaande wijze maar op één plaats te doen omdat je indirect -via meer van dit soort functies- met je database communiceert.

Ook kun je deze over tijd inhoudelijk wijzigen met behoud van de werking, maar ook uitbreiden naar aanleiding van ontwikkelingen in PHP-land en eigen voortschrijdend inzicht.

Je zou zelfs kunnen overwegen om bepaalde operaties te bundelen, maar daarmee moet je wel een beetje voorzichtig zijn uiteraard.

Wat je uit dit bovenstaande geratel moet meenemen is het volgende: iets wat je hard in code hebt vastgelegd is veranderd. Dit kost je nu veel werk om aan te passen. Bega niet opnieuw dezelfde fout maar wees slim(mer) in je aanpak.
Gewijzigd op 16/10/2017 14:48:46 door Thomas van den Heuvel
 
Ronald E

Ronald E

21/10/2017 04:55:59
Quote Anchor link
op gelost bedankt
 
Thomas van den Heuvel

Thomas van den Heuvel

21/10/2017 18:51:36
Quote Anchor link
Wellicht wil je de oplossing ook delen? Of kwam het neer op simpelweg alle voorkomens van mysql_ veranderen naar een gelijkwaardige mysqli_-variant?
 

Pagina: « vorige 1 2



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.