webForumDet fria alternativet

Inkludera en fil i ett php (del)skript

PHP

2 svar · 453 visningar · startad av wally_91

Medlem sedan feb. 2006511 inlägg
Frågan#1

Hej alla!

Jag satt här med lite kod och det funkar sådär på min sida.

Jag lånar tråden för detta problemet först...

Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /.../ on line 37

Kod:

<?php

include "funktioner.php";

//Om QUERY_STRING är tom laddas denna text, kolla under resurser och Server variablar för mer information
if(empty($_SERVER['QUERY_STRING'])) {

$mysql_server = "";
$mysql_user = "";
$mysql_password = "";
$mysql_database = "";
 
$conn142 = mysql_connect($mysql_server, $mysql_user, $mysql_password);
mysql_select_db($mysql_database, $conn142);

$qtabell2 = mysql_query("SELECT id, rubrik, skribent, takeaway FROM tabell WHERE takeaway <> '' ORDER BY RAND() LIMIT 5");
while($stabell2 = mysql_fetch_array($qtabell2)) {

echo "<a href='index.php?id=";
echo $sguider2['id'];
echo "'>";
echo $sguider2['rubrik'];
echo "</a>";
echo "<br />";
//Här laddar vi funktionen som vi har gjort
echo bbkod(shortstr($stabell2['takeaway'], 75));
echo "<br />";
//Om innehållet för är längre än 75 tecken så skrivs... ut
if(strlen($stabell2['takeaway']) > 75) {
echo "";
}
echo "<br />";

} }

[B]mysql_close($conn142);[/B] - Rad 37
?>

Vad är det som är fel eftersom jag får ett mysql_close(): is not a...

Till huvudproblemet:

På rad 3 inkluderar jag funktioner.php. Hur gör jag så att före mysql_close, stänger jag inkluderingen, precis som man gör med mysql_close. Jag gör så här för i vissa filer inkluderas funktioner.php två gånger och man får ett felmeddelande.

Det skulle vara något som include_close...

Medlem sedan aug. 20002 975 inlägg
#2

Det är endast då första if-satsen blir sann som du har en MySQL-anslutning att stänga.
Stänger du den inte i skriptet, kommer PHP att stänga den automatiskt vid skriptets slut.

Om du är osäker på ifall dina filer kan komma att inkluderas flera gånger, använd include_once.

Medlem sedan feb. 2006511 inlägg
#3

Tack Matte! Du löste mitt problem på ett konstigt sätt. Jag gjorde som du sa men jag glömde en grej som ingen hade snappat upp nämligen i mysql_close(); har jag med vilken koppling jag vill stänga. Jag gjorde såhär istället:

<?php

include "funktioner.php";

//Om QUERY_STRING är tom laddas denna text, kolla under resurser och Server variablar för mer information
if(empty($_SERVER['QUERY_STRING'])) {

$mysql_server = "";
$mysql_user = "";
$mysql_password = "";
$mysql_database = "";

$conn142 = mysql_connect($mysql_server, $mysql_user, $mysql_password);
mysql_select_db($mysql_database, $conn142);

$qtabell2 = mysql_query("SELECT id, rubrik, skribent, takeaway FROM tabell WHERE takeaway <> '' ORDER BY RAND() LIMIT 5");
while($stabell2 = mysql_fetch_array($qtabell2)) {

echo "<a href='index.php?id=";
echo $sguider2['id'];
echo "'>";
echo $sguider2['rubrik'];
echo "</a>";
echo "<br />";
//Här laddar vi funktionen som vi har gjort
echo bbkod(shortstr($stabell2['takeaway'], 75));
echo "<br />";
//Om innehållet för är längre än 75 tecken så skrivs... ut
if(strlen($stabell2['takeaway']) > 75) {
echo "";
}
echo "<br />";

}
mysql_close();
?>
270 ms totalt · 4 externa anrop · v20260731065814-full.868a69e5
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)