2012-04-08 13 views
3

Ich habe eine Funktion gemacht, um mir den Namen eines Benutzers von ihrer Benutzer-ID zu geben. Die verschiedenen Benutzer-IDs befinden sich in einer While-Schleife, so dass die Funktion mehrmals verwendet wird. Es funktioniert gut für eine Benutzer-ID, aber gibt mir einen Fehler, wenn es mehrere gibt. Der Fehler ist „Warnung: mysql_select_db(): geliefertes Argument ist keine gültige MySQL-Link-Ressource ist“php Funktion wird nicht mehr als einmal arbeiten

der Code

<?php 

function user_details($user_id) { 

require_once('../Connections/runner.php'); 

if (!function_exists("GetSQLValueString")) { 
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{ 
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; 

    $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string ($theValue) : mysql_escape_string($theValue); 

    switch ($theType) { 
    case "text": 
     $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; 
     break;  
    case "long": 
    case "int": 
     $theValue = ($theValue != "") ? intval($theValue) : "NULL"; 
     break; 
    case "double": 
     $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; 
     break; 
    case "date": 
     $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; 
     break; 
    case "defined": 
     $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; 
     break; 
    } 
    return $theValue; 
} 
} 

$colname_users = $user_id; 
$first_name = ""; 
$last_name = ""; 
mysql_select_db($database_runner, $runner); 
$query_users = sprintf("SELECT first_name, last_name, profile_img_small FROM sign_up WHERE user_id = %s", GetSQLValueString($colname_users, "int")); 
$users = mysql_query($query_users, $runner) or die(mysql_error()); 
$row_users = mysql_fetch_assoc($users); 
$totalRows_users = mysql_num_rows($users); 
$first_name = $row_users['first_name']; 
$last_name = $row_users['last_name']; 
$profile_sml = $row_users['profile_img_small']; 

echo "$first_name $last_name"; 
} 



?> 

<?php 
$user_id = 10; 
?> 

<a href="*"><?php user_details("$user_id"); ?></a> 

<?php 
$user_id = 9; 
?> 

<a href="*"><?php user_details("$user_id"); ?></a> 

Antwort

5

Jedes Mal, wenn Sie die Funktion ausführen, versuchen Sie, diese Datei benötigen nur einmal. Da Sie sagen, dass es nicht erforderlich ist, wenn es bereits vorher benötigt wurde, wird es vorher benötigt und damit ignoriert. Diese Variablen existieren also beim zweiten Aufruf nicht und die Funktion führt unweigerlich zu nichts. Ich bin sehr überrascht, dass es keine anderen Fehler erzeugt, da eine ganze Datei fehlt. Es muss nicht extrem wichtig sein.

+1

Prost - ich bin genervt mit mir. Das hat es behoben. – Jeff

+0

Vielen Dank für Ihre schnelle Antwort – Jeff

+0

Sie sollten die Antwort akzeptieren, wenn es @Jeff funktioniert hat –

Verwandte Themen