PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   SQL / Datenbanken (https://www.php-resource.de/forum/sql-datenbanken/)
-   -   Abfrage wird nicht mit Werten gefüllt (https://www.php-resource.de/forum/sql-datenbanken/78740-abfrage-wird-nicht-mit-werten-gefuellt.html)

Maybe 02-12-2006 15:45

Fehler 2: mysql_fetch_object()
 
Hallo!
Also kA, ich hab eine sql abfrage geschrieben und da bei der If-Anweisung immer das Falsche erfebnis rauskam hab ich mal alle Werte ausgeben wollen und bemerkt das die Abfrage gar nicht richtig läuf bzw. einfach nichts ausgibt...

PHP-Code:

case "kaufen":
  
$id $_GET["id"];
  
mysql_connect ("localhost","","") or die ("Keine Verbindung zum Server");
mysql_select_db ("") or die ("Keine Tabelle ausgewählt");
  
$sql="SELECT pferde.*, benutzerdaten.* FROM pferde INNER JOIN benutzerdaten WHERE benutzerdaten.Id = '".$_SESSION['user_id']."' AND pferde.Pferd_id = $id";
  
$ergebnis mysql_query($sql)
    or die(
mysql_error().'<hr />'.'euer SQL'.'<hr />');
    echo 
"<br><br>";
  if (
$row->Wert >= $row->Konto OR $row->Besitzer != 'Markt')
 {
 echo 
"Zu wenig Geld";
 echo 
"Wert ist $row->Wert";
 echo 
"Besitzer ist $row->Besitzer"// hier wollte ich es testen.
 
}
  else {
  echo 
"Du kannst es kaufen.";
  }
break; 

Hab ich etwas nicht beachtet?

ghostgambler 02-12-2006 15:58

wo wird denn $row definiert?!

Maybe 02-12-2006 16:02

omg... xDD
Danke ^^ kann geschlossen werden ^^

Maybe 03-12-2006 10:30

Oder okay - bevor ich ein neues Thema eröffne kann ich hier auch eig. gleich den nächsten Fehler im nächsten Script posten:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in /usr/export/www/vhosts/funnetwork/hosting/maybepower/hero/neu/job.php on line 30

PHP-Code:

include ("checkuser.php"); 
  
mysql_connect ("localhost","","") or die ("Keine Verbindung zum Server");
mysql_select_db ("") or die ("Keine Tabelle ausgewählt");
  
$id1 $_GET["id"];
  
$pferd_id $_GET["pferd_id"];
$sql "UPDATE tierarzt 
SET Behandlung = 'Ja' 
WHERE Ta_id = $id1"
;
   
$ergebnis1 mysql_query($sql)
   or die(
mysql_error().'<hr />'.'euer SQL'.'<hr />');
   
$sql "UPDATE pferde 
SET Gesund = '1000' 
WHERE Pferd_id = $pferd_id"
;
   
$ergebnis2 mysql_query($sql);
  
$ergebnis3 mysql_query("SELECT * FROM benutzerdaten 
WHERE Id = '"
.$_SESSION['user_id']."'") or die(mysql_error()) ;
     
$row mysql_fetch_object($ergebnis3);
   
$kontoneu $row->Konto '100';
   
$sql "UPDATE benutzerdaten 
SET Konto = $kontoneu 
WHERE Id = '"
.$_SESSION['user_id']."'";
   
$ergebnis4 mysql_query($sql)
   or die(
mysql_error().'<hr />'.'euer SQL'.'<hr />');
   
mysql_close();
     
mysql_connect ("localhost","","") or die ("Keine Verbindung zum Server");
mysql_select_db ("") or die ("Keine Tabelle ausgewählt");

    
$ergebnis5 mysql_query("SELECT * FROM tierarzt 
WHERE Ta_id = $id1"
);
     
$row mysql_fetch_object($ergebnis5);
     
$user $row->B_id;
     echo 
"$user<br>";
   
$ergebnis7 mysql_query("SELECT * FROM benutzerdaten 
WHERE $user = Id"
);
    
$row2 mysql_fetch_object($ergebnis7);
  
$kontoneu2 $row2->Konto '100';
     
$sql "UPDATE benutzerdaten 
SET Konto = $kontoneu2 
WHERE Id = $user"
;
      
$ergebnis6 mysql_query($sql)
 or die(
mysql_error().'<hr />'.'euer SQL'.'<hr />');
   echo 
"Der Auftrag wurde ausgeführt."

Zeile 30:

PHP-Code:

 $ergebnis3 mysql_query("SELECT * 
FROM benutzerdaten 
WHERE Id = '"
.$_SESSION['user_id']."'") or die(mysql_error()) ; 


hhcm 03-12-2006 12:47

PHP-Code:

$sql "SELECT * FROM benutzerdaten WHERE Id = '".$_SESSION['user_id']."'";
echo 
$sql;
$ergebnis3 mysql_query($sql) or die(mysql_error()); 

Würde dir (denke ich) zeigen das dein Statement so aussieht.

SELECT * FROM benutzerdaten WHERE Id = '';

Und was sagt uns das? :)

Maybe 03-12-2006 22:17

Joa +am kopf kratz+ der Fehler is gelöst, der nächste is da =/
Eig. könnte ich mir gleich einen Sammelthread erstelln...

PHP-Code:

<?php 
  
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <
p><select name="Deckhengst" size="1">
    <?
  
$ergebnis mysql_query("SELECT * FROM 
pferde WHERE 
Besitzer = '"
.$_SESSION['user_id']."' AND Geschlecht = 'Hengst'");
    while (
$row mysql_fetch_object($ergebnis))
{
  
?>  <option value="<? $row->Pferd_id ?>"><? $row->Name ?></option>
  <?  ?>
    <form name="Decktaxe">
 <p><input type="Decktaxe" name="Decktaxe"></p>
 </form>
 <form name="Beschreibung">
    <p><textarea name="Beschreibung" rows="3"></textarea></p>
<input type="submit" value="Aendern" name="submit">
</form>
<?

$_POST
['Deckhengst'] = $Hengstname// zeile 42
$_POST['Decktaxe'] = $Decktaxe// zeile 43
$row->Rasse $Rasse// zeile 44
$_POST['Beschreibung'] = $Beschreibung;
  
$eintrag mysql_query("INSERT INTO deckhengste 
(Deck_id, Hengstname, Decktaxe, Rasse, Beschreibung) VALUES 
('', $Hengstname, $Decktaxe, $Rasse, $Beschreibung"
); // Zeile 46

?>

Fehlermeldungen:
Notice: Undefined variable: Hengstname in /usr/export/www/vhosts/funnetwork/hosting/maybepower/hero/neu/deckhengst.php on line 42, 43, 44, 46

onemorenerd 03-12-2006 22:28

Eine Zuweisung wird immer und in jeder mit bekannten Sprache von rechts nach links wirksam, x = 4 belegt x mit dem Wert 4, foo = bar belegt foo mit dem Wert von bar und nicht etwa umgedreht.
So und nun liest du die fraglichen Zeilen nochmal!

Maybe 03-12-2006 22:42

hm... okay danke =D Aber Fehlerlos isses leider noch nicht =(

Hab den teil jetzt so rumgedreht und noch ein If drangehängt:
PHP-Code:

  ?>
  <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <p><select name="Deckhengst" size="1">
    <?
  $ergebnis 
mysql_query("SELECT * FROM pferde 
WHERE Besitzer = '"
.$_SESSION['user_id']."' AND Geschlecht = 'Hengst'");
    while (
$row mysql_fetch_object($ergebnis))
{
  
?>  <option value="<? $row->Pferd_id ?>"><? $row->Name ?></option>
  <?  ?>
    <form name="Decktaxe">
 <p><input type="Decktaxe" name="Decktaxe"></p>
 </form>
 <form name="Beschreibung">
    <p><textarea name="Beschreibung" rows="3"></textarea></p>
<input type="submit" value="Aendern" name="submit">
</form>
<?
if (!empty($_POST["submit"])) {
$Hengstname $_POST['Deckhengst'];
$Decktaxe $_POST['Decktaxe'];
$Rasse $row->Rasse;
$Beschreibung $_POST['Beschreibung'];
  
$eintrag mysql_query("INSERT INTO deckhengste 
(Deck_id, Hengstname, Decktaxe, Rasse, Beschreibung) VALUES 
('', $Hengstname, $Decktaxe, $Rasse, $Beschreibung"
);
}
?>

Aber: Das Drop-down menü wird als Leer angezeigt, außerdem speichert es nach dem Absenden nichts in der DB

Maybe 04-12-2006 18:48

Also ich bin mir sicher das vor allem das nich geht :
PHP-Code:

{
  ?>  <option value="<? $row->Pferd_id ?>"><? $row->Name ?></option>
  <?  ?>

Hat jemand eine idee wie es anders zu schreiben oder eben richtig ist? =/

onemorenerd 04-12-2006 19:40

echo? var_dump($row)?

Maybe 04-12-2006 19:57

Zitat:

Original geschrieben von onemorenerd
echo? var_dump($row)?
Tut mir leid aber davon hab ich jetzt leider nichts verstanden :{

hhcm 04-12-2006 20:13

wie wäre es mit

<? echo $row->Pferd_id ?>

oder

<?= $row->Pferd_id ?>


????

Im übrigen...

Gewöhn dir lieber mal an

<?php zu schreiben anstatt <?

Maybe 04-12-2006 20:28

Also
PHP-Code:

  ?>  <option value="<? echo $row->Pferd_id ?>"> <? echo $row->Name ?> </option>

Hat leider nicht im Geringsten verändert...
Joa, ich schreib immer die kurzform +gg+ Ist halt wirklich kürzer +lol+

hhcm 04-12-2006 21:01

Dann änder mal

PHP-Code:

$ergebnis mysql_query("SELECT * FROM pferde 
WHERE Besitzer = '"
.$_SESSION['user_id']."' AND Geschlecht = 'Hengst'") or die(mysql_error()); 

Und falls das keinen Fehler ausschmeisst

PHP-Code:

while ($row mysql_fetch_object($ergebnis))
{
   
var_dump($row); // Wie bereits vorgeschlagen

   // Restlicher Code



Maybe 05-12-2006 15:04

Also ich hab beschlossen es anders zu lösen ^^
Nur - omg - wieder fehler:

PHP-Code:

  <form action="deckhengste2.php" method="post">
 <
p><input type="text" name="Deckhengst"></p>
 <
p><input type="text" name="Decktaxe"></p>
 <
textarea name="Beschreibung" rows="3"></textarea>
<
input type="submit" value="Aendern" name="submit">
<
br

2.
PHP-Code:

   $ergebnis mysql_query("SELECT * FROM pferde 
    WHERE Besitzer = '"
.$_SESSION['user_nickname']."' AND Geschlecht = 'Hengst'") or die(mysql_error());
         
$row mysql_fetch_object($ergebnis);
if (!empty(
$_POST["submit"])) {
  
$eintrag "INSERT INTO deckhengst (Deck_id, Hengstname, Decktaxe, Rasse, Beschreibung) 
VALUES ('', '$_POST[Decktaxe]', '$_POST[Decktaxe]', '$row->Rasse', '$_POST[Beschreibung]'"
;
    
$eintragen mysql_query($eintrag);
      if (
mysql_query($sql)) {
        echo 
"<p><center>Erfolgreich geupdatet</center></p>";
    } else {
        echo 
"<p>Dateneingabe nicht erfolgreich!</p><br>
    '"
.$_POST['Beschreibung']."'";
    } 
    
mysql_close(); 

Es kommt immer "Dateneingabe nicht erfolgreich!"


Alle Zeitangaben in WEZ +2. Es ist jetzt 20:19 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG