geen verbinding

Status
Niet open voor verdere reacties.

pkmartijn

Gebruiker
Lid geworden
18 aug 2011
Berichten
163
ik heb een spel maar hij geeft ineens deze error
Fatal error: Cannot redeclare connect() (previously declared in /.../..../..../.../.../martijn/game/functions.php:4) in /.../..../..../..../..../martijn/game/functions.php on line 6

dit staat daar

PHP:
<?php

function connect() {
    mysql_connect("localhost","ismaija52_1","****") or die("error");
    mysql_select_db("ismaija52_1");
}
?>
wat is er fout?
ik kom er maar niet uit
 
De foutmelding geeft aan dat de functie "connect" al bestaat. Blijkbaar staat in het bestand dat deze foutmelding geeft ook een functie met dezelfde naam. Dat is niet toegestaan.
 
eh waar dan?
dit is de header:
PHP:
<?php
include("functions.php");
connect();
?>
<html>
<head>
<title>martijn's game</title>
<link rel="stylesheet" type="text/css" href="style.css"/>
</head>
<body>
<div id="header">martijn's game</div>
<div id="container">
<div id="navigation"><div id="nav_div">
<?php
if(isset($_SESSION['uid'])){
    include("safe.php");
?>
    &raquo; <a href="main.php">Your Stats</a><br /><br />
    &raquo; <a href="rankings.php">Battle Players</a><br /><br />
    &raquo; <a href="units.php">Your Units</a><br /><br />
    &raquo; <a href="weapons.php">Your Weapons</a><br /><br />
    &raquo; <a href="logout.php">Logout</a>
<?
}else{
?>
    <form action="login.php" method="post">
    Username: <input type="text" name="username"/><br />
    Password: <input type="password" name="password"/><br />
    <input type="submit" name="login" value="login"/>
    </form>
    &raquo; <a href="register.php">Register</a>
<?
}
?>

</div></div>
<div id="content"><div id="con_div">
en dit is functions.php:

PHP:
<?php

function connect() {
    mysql_connect("localhost","ismaija52_1","****") or die("error");
    mysql_select_db("ismaija52_1");
}


function protect($string) {
    return mysql_real_escape_string(strip_tags(addslashes($string)));
}

function output($string) {
    echo "<div id=\"output\">" . $string . "</div>";
}

?>
 
neem eens een kijkje op you tube hoe je je database verbindingen kunt maken.
Vooral database Class en dan wel een singleton.
Dan heb je maar 1 connection
 
en wat is dit inene voor error
Fatal error: Cannot redeclare protect() function: regel 5
smiddags doet hij het kom ik savonds doet ie het niet meer
PHP:
<?php

function protect($string) {
    return mysql_real_escape_string(strip_tags(addslashes($string)));
}

function output($string) {
    echo "<div id=\"output\">" . $string . "</div>";
}

?>
 
doe dit eens
PHP:
function protect($string) {
$string = addslashes($string);
$string = strip_tags($string);
    return mysql_real_escape_string($string);
}
 
haal deze weg, mysql_real_escape_string, en het werkt.
dit functie heeft een database connectie nodig
 
ach ik zie het al, je gebruikt in je script al een keer de functie protect.
die naam word al gebruikt en daarom kun je er niet een nieuwe functie van maken.
 
haha leuke vraag, waar.
Je post een snippet, daar uit valt echt niet op te maken hoe je je site hebt opgezet!
je zou van de functie ook protect_2 kunnen maken.
Je moet voor die functie een andere naam gebruiken als je wilt dat die gaat werken
 
Maar dan gaat het toch niet werke want dan moet ik hem ook aanroepen en geeft hij toch zelfs error?
 
hij doet het niet weer die error Cannot redeclare pak()
dit is functie nu
PHP:
<?php

function pak($string) {
    return mysql_real_escape_string(strip_tags(addslashes($string)));
}

function output($string) {
    echo "<div id=\"output\">" . $string . "</div>";
}

?>
en dit login.php
PHP:
<?php
session_start();
include("header.php");
?>
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css"/>
</head>
<body>
</body>
</html>
<?

if(isset($_POST['login'])){
    if(isset($_SESSION['uid'])){
        echo "You are already logged in!";
    }else{
        $username = pak($_POST['username']);
        $password = pak($_POST['password']);
        
        $login_check = mysql_query("SELECT `id` FROM `user` WHERE `username`='$username' AND `password`='".md5($password)."'") or die(mysql_error());
        if(mysql_num_rows($login_check) == 0){
            echo "Invalid Username/Password Combination!";
        }else{
            $get_id = mysql_fetch_assoc($login_check);
            $_SESSION['uid'] = $get_id['id'];
            echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; url=main.php\">";
        }
    }
}else{

}



include("footer.php");
?>
ik snap er nu niks meer van
 
staat die functie soms in een file die je 2x include?
 
Of verander je include eens in require_once, dan importeert ie ze alleen indien nodig, en dan ook nog eens eenmalig.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan