[GastForen Programmierung/Entwicklung PHP und MySQL die suche hat geklappt, aber jetzt habe ich probleme mit etwas neuem

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Themen
Beiträge
Moderatoren
Letzter Beitrag

die suche hat geklappt, aber jetzt habe ich probleme mit etwas neuem

xampp
Beiträge gesamt: 113

19. Feb 2007, 21:32
Beitrag # 1 von 3
Bewertung:
(716 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo, erstmal vielen dank, für die antworten - es hat geklappt!!
jetzt habe ich ein neues problem, wieder mit dem einbinden ?=>
es ist langsam zum ko . . . !
$sql = 'SELECT * FROM `versuchen` WHERE `id` = '.$_POST["nummerloeschen"].'';

=> das ist die Variante, von PhpMyadmin (in php umgebaut)
=> den habe ich auf phpMyamin ausprobiert.
=> nach dem einbinden in das skript erhielt die seite weder eine Fehlermeldung noch den zu löschenden Datensatz und den Button zum bestätigen bzw. zum löschen!

=> es ist echt zum (den rest verkneife ich mir)

gruss
xampp
k . . . gerade! -:)
X

die suche hat geklappt, aber jetzt habe ich probleme mit etwas neuem

Robert Zacherl
Beiträge gesamt: 4153

19. Feb 2007, 22:40
Beitrag # 2 von 3
Beitrag ID: #277299
Bewertung:
(706 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo xampp,

das Hochkomma wird benötigt, um den Wert der WHERE clause zu klammern. Deshalb muss der SQL Query-String mit doppelten Anführungsstrichen geklamert werden. Also so:

Zitat $sql = "SELECT * FROM `versuchen` WHERE `id` = '".$_POST["nummerloeschen"].'";


Sie sollten auch mal anfangen zumindest in der Entwicklungsphase Ihre SQL-Queries mit mysql_error() abzuschließen, dann erhalten Sie aussagekräftige Fehlermeldungen. In diesem Fall wäre z.B. eine ungültige Column mit dem Wert von $_POST["nummerloeschen"] angemeckert worden.


als Antwort auf: [#277291]

die suche hat geklappt, aber jetzt habe ich probleme mit etwas neuem

xampp
Beiträge gesamt: 113

21. Feb 2007, 01:59
Beitrag # 3 von 3
Beitrag ID: #277530
Bewertung:
(679 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ich möchte mich recht herzlich für ihre mühe bedanken!
das problem konnte ich trotzdem nicht lösen!

die gründe:
1.
stimmt die elementenname des formularfeldes mit dem namen als formularfeldelement in der sql - Anweisung überein.
=> also, kann darin schon mal nicht der Fehler liegen.

2.
beim überprüfen des $result durch: echo $result; wird folgende meldung angezeigt:

Resource id #3

. . . und zwar, wenn ich die Ergebnisvariable $result
bei dem Block überprüfe, wo alle Datensätze angezeigt werden(=> beim auslesen der Datenbank)

dann erscheint folgendes: eine leere seite
=> eins steht für mich fest:

1. es liegt nicht an dem absetzen der Abfrage (=> oder doch?)

2. der name der Variablen $_POST stimmt mit dem elementenname der eingabezeile des Formulars nr des zu löschenden datensatzes stimmen über ein!

3.
Beim anzeigen des datensatzes kann es auch nicht liegen (=> keine schleife gesetzt, weil sie nicht benötigt wird, nur ein Datensatz, wird ausgegeben)

4.
Der name des schlüsselfeldes stimmt mit dem namen des schlüsselfeldes in der sql-anweisung überein?

5.
auch nicht an dem argument des ergebnisses

6.
ich weis nur, dass es an dem absetzen der sql abfrage hängt!

was bedeutet die ausgabe:
Resource id #3 ?

ich weis nach mehreren stunden suchen (mehr als 5 stunden) nicht wo der fehler liegt.

wie kann ich den inhalt der $result (Ergebnisvariblen) anzeigen.
mit der methode
echo $result; => geht es leider nicht!

es erscheint dann das gleiche wie vorher:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Dokumente und Einstellungen\admin\Desktop\xampp\htdocs\neugast1.php on line 229
Nr.
Name:
e-mail:
Meinung:
Soll dieser Datensatz wircklich gelöscht werden?

wenn ich diese anweisung an einer anderen stelle setze, dann
erscheint die Resource id#3
mit allen anweisungen!

=> ich komme einfach nicht mehr weiter?
=> wie geht das genau mit der Überprüfung , ob die abfrage abgesetzt werden konnte!

// Block für löschen und bearbeiten eines Datensatzes beginnt
//Verbindung mit server und datenbank mit absetzen der sql-anweisung löschen des gewünschten Datensatzes
if($_POST["go"]== "bearbeiten") {
$server= "localhost";
$user= "pma";
$pass= '';
$db= "versuch";
$verbinden= mysql_connect($server, $user, $pass);
mysql_select_db ($db, $verbinden);

// setzen der sql - Anweisung zum Anzeigen aller Datensätze
$sql = 'SELECT * from versuchen';
$result= mysql_query($sql);

//Einträge in ein Array schreiben und ausgeben
while($zeile= mysql_fetch_array($result)) {
echo' Nr. '.$zeile[0].' <br>';
echo' Name: '.$zeile[1].' <br> ';
echo' e-mail: '.$zeile[2].' <br>';
echo' Meinung: '.$zeile[3].'<br> ';
echo' <hr> ';
}

//Eingabezeile für die Nummer, deren Datensatz geändert werden soll und eine Eingabezeile für die Nummer, deren Datensatz gelöscht werden soll
echo'
<form action= " '.$PHP_SELF.' " method= "POST">
<table border= "0">
<tr>
<td>Nr. des zu bearbeiteten Datensatzes:</td>
<td><input type= "text" name="nummeraendern" size= "5"></td>
<td><input type= "submit" name= "go" value= "aendern"></td>
</tr>

<tr>
<td>Nr. des zu löschenden Datensatzes:</td>
<td><input type= "text" name= "nummerloeschen" size= "5"></td>
<td><input type= "submit" name= "go" value= "loeschen"></td>
</tr>
</table>
</form>
';
}
//Verbindung mit server und datenbank
if($_POST["go"] == "loeschen") {
$server= "localhost";
$user= "pma";
$pass= '';
$db= "versuch";
$verbinden= mysql_connect($server, $user, $pass);
mysql_select_db ($db, $verbinden);

// setzen der sql - Anweisung zum Anzeigen des gewünschten datensatzes
$sql = "SELECT * FROM versuchen WHERE `id` = '".$_POST["nummerloeschen"].'"';
$result= mysql_query($sql);

//Gesuchter datensatz anzeigen => keine schleife, nur ein Datensatz
$zeile= mysql_fetch_array($result);

echo' Nr. '.$zeile[0].' <br>';
echo' Name: '.$zeile[1].' <br> ';
echo' e-mail: '.$zeile[2].' <br>';
echo' Meinung: '.$zeile[3].'<br> ';
echo' <hr> ';

//Absendebutton wircklich löschen setzen
if($_POST["go"] == "loeschen") {
echo'
<form action= " '.$PHP_SELF.' " method= "POST">
Soll dieser Datensatz wircklich gelöscht werden?
<table border= "0">
<input type= "hidden" name="nummerloeschen" value="'.$_POST["nummerloeschen"].'">
<td><input type= "submit" name= "go" value= "ja"></td>
<td><input type= "submit" name= "go" value= "nein"></td>
</tr>
</form>
</table>
';
}}
?>
=> vielen dank für ihre mühe!


als Antwort auf: [#277299]