php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #16 (permalink)  
Alt 13-05-2007, 21:36
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Naja, der Rückgabewert ist schon ein String, ich hab glaube ich die Frage falsch gestellt.

Vielleicht kann man so sagen, alles was von Funktionen zurückkommt, oder was in einer Variable drinsteht ist (sofern es ein String ist), schon ein "fertiger" String, da brauchst du dich nicht mehr drum kümmern, im Gegenteil, solche Sachen sollen nicht in Anführungszeichen.

Einzig und allein das, was du selber dazuschreibst, also sowas
PHP-Code:
$name 'Klaus';
$_POST['test'] = 'test'
gehört in Anführungszeichen. Nicht sowas wie
PHP-Code:
$_POST[$name]

echo(
"Hallo " $name);
echo(
mysql_num_rows()); 
Verstehst du ungefähr was ich meine? Die richtige Antwort wäre gewesen: in dem genannten Codeblock kommt gar kein String vor. Alle Anführungszeichen, die da drinstehen, sind überflüssig, die meisten sogar falsch.

Und nun suchst du dir ein Kapitel irgendwo, wo das nochmal richtig erklärt wird. Zum Beispiel das hier, oder das von Kropff. Du sollst das ja verstehen was du da treibst, und nicht 8 Stunden lang herumprobieren.


Edit: dies hier ist das richtige zum Lesen.
__________________
ich glaube

Geändert von ministry (13-05-2007 um 21:43 Uhr)
Mit Zitat antworten
  #17 (permalink)  
Alt 14-05-2007, 00:45
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Super, es klappt! Vielen Dank für deine Erklärung und für deine Hilfe!




PHP-Code:
<?
session_start
();
include 
'sessionhelpers.inc.php';

if (!
logged_in())
{
    echo 
'Sie sind nicht eingeloggt.<p />';
echo 
'<a href="index.php?section=login">Start</a>';
exit;
}
?> 


<?php


include("dbconnect.php");

$welche=$_GET["welche"];

$abfrage 'SELECT * FROM bauteil WHERE NameBauteil LIKE "%' $welche '%"';

$result mysql_query($abfrage) or die(mysql_error());

for (
$i 0$i mysql_num_fields($result); $i++){

$name[$i]= mysql_field_name($result,$i); // Name des Textfeldes

echo $name[$i];  

$zwischen[$i] = $_POST[$name[$i]];  //Post Wert des Textfeldes

echo $zwischen[$i];  
 
$aendern "UPDATE bauteil Set $name[$i] = '$zwischen[$i]' WHERE NameBauteil LIKE "%' . $welche . '%"";

$update mysql_query($aendern) ;

}

?>

Die Daten wurden geändert.


<br>
Mit Zitat antworten
  #18 (permalink)  
Alt 14-05-2007, 02:09
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Argh, hab wieder ein Problem

Etwas was sonst immer geklappt hat, klappt jetzt irgendwie nicht mehr...und zwar diese Zeile:
$welche=$_GET["welche"];

Die Variable "welche" stammt aus der vorherigen php Datei mit der Zuweisung:
$welche=$_GET['id'];
und mit dem link Aufruf......&id=bla.

Normalerweise hat diese Vorgehensweise wirklich immer geklappt aber jetzt siehen meine SQL Anfragen z.B. so aus:
UPDATE bauteil Set BemessungsfrequenzHz = ' ' WHERE NameBauteil = ''

dabei sollte zwischen den '....' die ID stehen....ARGHHH
Mit Zitat antworten
  #19 (permalink)  
Alt 14-05-2007, 02:11
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

GET-Variablen werden hinter dem Fragezeichen in der URL übergeben. Wenn diese lautet "id=xyz", dann heißt die Variable wie?
Mit Zitat antworten
  #20 (permalink)  
Alt 14-05-2007, 02:31
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Die Seite wird mit diesem Link aufgerufen:

http://****/index.php?section=editie...,5-10-xx0-9000

auf dieser editieren.php Seite wird zur Probe der korrekte Wert ausgegeben, wird aber nicht wie sonst durch die POST Methode auf der aendern.php transferiert.
Aber genau so hat es sonst auch immer funktioniert.....l
Mit Zitat antworten
  #21 (permalink)  
Alt 14-05-2007, 02:40
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

Ich verstehe das Problem nicht.
Was ist wo leer, und wie sieht der entsprechende GET-String bzw. ein var_dump() der POST-Variablen aus?
Mit Zitat antworten
  #22 (permalink)  
Alt 14-05-2007, 12:30
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

diese Variable
PHP-Code:
$welche=$_GET["welche"]; 
auf meiner aendern.php ist leer, liefert nach einem echo $welche keinen Wert zurück. Auf meiner ersten Seite, der editieren.php klappt das WQerteübergeben problemlos. Die editieren.php ruft die aendern.php auf. eine mögliche Belegung wäre z.B. $welche=DT3-0,5-10-xx0-9000.
Mit Zitat antworten
  #23 (permalink)  
Alt 14-05-2007, 12:32
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Die editieren.php ruft die aendern.php auf.
Wie macht sie das?
__________________
ich glaube
Mit Zitat antworten
  #24 (permalink)  
Alt 14-05-2007, 12:53
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Um das ganze mal zu verdeutlichen zeige ich nochmal den Code der editieren.php:
(das hidden Feld habe ich erst nach der Feststellung, das das Werteübergeben nicht klappt, hin zu gefügt)
PHP-Code:
<?
session_start
();
include 
'sessionhelpers.inc.php';

if (!
logged_in())
{
    echo 
'Sie sind nicht eingeloggt.<p />';
echo 
'<a href="index.php?section=login">Start</a>';
exit;
}
?> 

<?
include("dbconnect.php");

echo 
' <form action=index.php?section=aendern method="post"> ';
echo 
' <table border ="0"> ';

$welche=$_GET['id'];

echo 
$welche;  

$abfrage 'SELECT * FROM bauteil WHERE NameBauteil LIKE "%' $welche '%"';

$result mysql_query($abfrage) or die(mysql_error());

$row mysql_fetch_row($result);



for (
$i 0$i mysql_num_fields($result); $i++){

echo 
' <tr> ';
 echo 
' <td>'.mysql_field_name($result,$i).':</td> ';
      echo 
' <td><input type="text" name="'.mysql_field_name($result,$i).'" size="45" value=" ' $row[$i] . '" > ';

echo 
' </td> ';
echo 
'</tr> ';

}






?>

</table>
<input type="hidden" name="welche" value="<?php echo $_GET['id'];  ?>">
 <input type="submit" value="Diese Werte ändern"> 
  </form>
</body> 
</html> 

</body>
</html>
Mit Zitat antworten
  #25 (permalink)  
Alt 14-05-2007, 13:03
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

... wo ist der Anfang des Formulars geblieben ?
__________________
ich glaube
Mit Zitat antworten
  #26 (permalink)  
Alt 14-05-2007, 13:07
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was meinst du mit Anfang? Die editieren.php wird wiederum aus der bauteildar.php aufgerufen, wenn der Benutzer auf editieren klickt, wird der editieren.php die entsprechende ID per Link übergeben.
Mit Zitat antworten
  #27 (permalink)  
Alt 14-05-2007, 13:17
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Sorry, hatte mich verguckt...
PHP-Code:
echo ' <form action=index.php?section=aendern method="post"> '
Das Formular geht an die index.php.

in dieser sind $_GET['section'] (='aendern') und $_POST['welche'] (= die $_GET['id']) verfügbar.

Was ist nun das Problem?

Das action-Ziel sollte übrigens in Anführungszeichen.
__________________
ich glaube
Mit Zitat antworten
  #28 (permalink)  
Alt 14-05-2007, 13:22
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Problem ist, dass der Wert von $welche auf der anedern.php (section=aendern) der vorher noch auf der der editieren.php vorhanden war, nun nicht mehr vorhanden ist! Warum auch immer. Die Variable hat einfach keinen Wert und das ist mir völlig unbegreiflich
Mit Zitat antworten
  #29 (permalink)  
Alt 14-05-2007, 13:24
ministry
 PHP Junior
Links : Onlinestatus : ministry ist offline
Registriert seit: Jun 2006
Ort: KI / KA
Beiträge: 965
ministry ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also, in der index wird aendern.php included, ja?

dann mach mal in die aendern.php an den anfang:

PHP-Code:
echo("dies sind die GETs:<pre>");
var_dump($_GET);
echo(
"</pre> und hier sind die POSTs:<pre>");
var_dump($_POST);
echo(
"</pre>"); 
__________________
ich glaube
Mit Zitat antworten
  #30 (permalink)  
Alt 14-05-2007, 13:30
JCDenton
 Newbie
Links : Onlinestatus : JCDenton ist offline
Registriert seit: Jan 2007
Beiträge: 50
JCDenton ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hier meine Ausgabe (wie du siehst ist der Wert von "welche" korrekt, aber er taucht trotzdem in keinem der SQL Aufrufe auf...):

EDIT: ich glaube ich hab den Fehler...das muss $_POST('welche') heißen! Vielen Dank für deine Mühen und für deine Hilfe!

dies sind die GETs:

array(1) {
["section"]=>
string(7) "aendern"
}

und hier sind die POSTs:

array(39) {
["Projekt"]=>
string(1) " "
["Kategorie"]=>
string(1) " "
["Lastminus"]=>
string(1) " "
["Last0"]=>
string(1) " "
["Lastplus"]=>
string(1) " "
["Lebensdauer"]=>
string(1) " "
["InstandsetungsEmpfehlung"]=>
string(1) " "
["NameBauteil"]=>
string(20) " DT3-0,5-10-xx0-9000"
["Hersteller"]=>
string(13) " AMK-Antriebe"
["Motorart"]=>
string(14) " Synchronmotor"
["Schutzklasse"]=>
string(6) " IP 65"
["Isolierklassee"]=>
string(1) " "
["Kuehlungsart"]=>
string(19) " konvektionsgek?hlt"
["Beschreibung"]=>
string(42) " Servomotor, Hightorquemotoren Baureihe DT"
["LeistungkW"]=>
string(5) " 0,28"
["BemessungsspannungV"]=>
string(2) " 0"
["BemessungsfrequenzHz"]=>
string(1) " "
["BemessungsdrehmomentNm"]=>
string(5) " 0,45"
["BemessungsdrehzahlUmin"]=>
string(5) " 6000"
["BemessungsstromA"]=>
string(5) " 0,73"
["Einspeisungsart"]=>
string(1) " "
["DauerstillstandsmomentNm"]=>
string(4) " 0,5"
["MaximalmomentNm"]=>
string(4) " 1,6"
["AnlaufmomentNmAnzugsmoment"]=>
string(1) " "
["SattelmomentNm"]=>
string(1) " "
["KippmomentNm"]=>
string(1) " "
["MaximaldrehzahlUmin"]=>
string(7) " 10.000"
["GrenzdrehzahlfconstPn"]=>
string(2) " 0"
["Leerlaufdrehzahl"]=>
string(2) " 0"
["DauerstillstandstromA"]=>
string(4) " 0,8"
["MaximalstromA"]=>
string(4) " 3,1"
["AnlaufstromA"]=>
string(1) " "
["Leerlaufstrom"]=>
string(1) " "
["zulaessigerSpitzenstrom"]=>
string(2) " 0"
["Entmagnetisierungsstrom"]=>
string(1) " "
["DrehmomentkonstanteNmA"]=>
string(5) " 0,62"
["Leistungsfaktor"]=>
string(1) " "
["Wartung"]=>
string(27) " weitestgehend Wartungsfrei"
["welche"]=>
string(19) "DT3-0,5-10-xx0-9000"
}

SELECT * FROM bauteil WHERE NameBauteil LIKE "%%"Resource id #11Projekt UPDATE bauteil Set Projekt = ' ' WHERE NameBauteil = ''Kategorie UPDATE bauteil Set Kategorie = ' ' WHERE NameBauteil = ''Lastminus UPDATE bauteil Set Lastminus = ' ' WHERE NameBauteil = ''Last0 UPDATE bauteil Set Last0 = ' ' WHERE NameBauteil = ''Lastplus UPDATE bauteil Set Lastplus = ' ' WHERE NameBauteil = ''Lebensdauer UPDATE bauteil Set Lebensdauer = ' ' WHERE NameBauteil = ''InstandsetungsEmpfehlung UPDATE bauteil Set InstandsetungsEmpfehlung = ' ' WHERE NameBauteil = ''NameBauteil DT3-0,5-10-xx0-9000UPDATE bauteil Set NameBauteil = ' DT3-0,5-10-xx0-9000' WHERE NameBauteil = ''Hersteller AMK-AntriebeUPDATE bauteil Set Hersteller = ' AMK-Antriebe' WHERE NameBauteil = ''Motorart SynchronmotorUPDATE bauteil Set Motorart = ' Synchronmotor' WHERE NameBauteil = ''Schutzklasse IP 65UPDATE bauteil Set Schutzklasse = ' IP 65' WHERE NameBauteil = ''Isolierklassee UPDATE bauteil Set Isolierklassee = ' ' WHERE NameBauteil = ''Kuehlungsart konvektionsgek?hltUPDATE bauteil Set Kuehlungsart = ' konvektionsgek?hlt' WHERE NameBauteil = ''Beschreibung Servomotor, Hightorquemotoren Baureihe DTUPDATE bauteil Set Beschreibung = ' Servomotor, Hightorquemotoren Baureihe DT' WHERE NameBauteil = ''LeistungkW 0,28UPDATE bauteil Set LeistungkW = ' 0,28' WHERE NameBauteil = ''BemessungsspannungV 0UPDATE bauteil Set BemessungsspannungV = ' 0' WHERE NameBauteil = ''BemessungsfrequenzHz UPDATE bauteil Set BemessungsfrequenzHz = ' ' WHERE NameBauteil = ''BemessungsdrehmomentNm 0,45UPDATE bauteil Set BemessungsdrehmomentNm = ' 0,45' WHERE NameBauteil = ''BemessungsdrehzahlUmin 6000UPDATE bauteil Set BemessungsdrehzahlUmin = ' 6000' WHERE NameBauteil = ''BemessungsstromA 0,73UPDATE bauteil Set BemessungsstromA = ' 0,73' WHERE NameBauteil = ''Einspeisungsart UPDATE bauteil Set Einspeisungsart = ' ' WHERE NameBauteil = ''DauerstillstandsmomentNm 0,5UPDATE bauteil Set DauerstillstandsmomentNm = ' 0,5' WHERE NameBauteil = ''MaximalmomentNm 1,6UPDATE bauteil Set MaximalmomentNm = ' 1,6' WHERE NameBauteil = ''AnlaufmomentNmAnzugsmoment UPDATE bauteil Set AnlaufmomentNmAnzugsmoment = ' ' WHERE NameBauteil = ''SattelmomentNm UPDATE bauteil Set SattelmomentNm = ' ' WHERE NameBauteil = ''KippmomentNm UPDATE bauteil Set KippmomentNm = ' ' WHERE NameBauteil = ''MaximaldrehzahlUmin 10.000UPDATE bauteil Set MaximaldrehzahlUmin = ' 10.000' WHERE NameBauteil = ''GrenzdrehzahlfconstPn 0UPDATE bauteil Set GrenzdrehzahlfconstPn = ' 0' WHERE NameBauteil = ''Leerlaufdrehzahl 0UPDATE bauteil Set Leerlaufdrehzahl = ' 0' WHERE NameBauteil = ''DauerstillstandstromA 0,8UPDATE bauteil Set DauerstillstandstromA = ' 0,8' WHERE NameBauteil = ''MaximalstromA 3,1UPDATE bauteil Set MaximalstromA = ' 3,1' WHERE NameBauteil = ''AnlaufstromA UPDATE bauteil Set AnlaufstromA = ' ' WHERE NameBauteil = ''Leerlaufstrom UPDATE bauteil Set Leerlaufstrom = ' ' WHERE NameBauteil = ''zulaessigerSpitzenstrom 0UPDATE bauteil Set zulaessigerSpitzenstrom = ' 0' WHERE NameBauteil = ''Entmagnetisierungsstrom UPDATE bauteil Set Entmagnetisierungsstrom = ' ' WHERE NameBauteil = ''DrehmomentkonstanteNmA 0,62UPDATE bauteil Set DrehmomentkonstanteNmA = ' 0,62' WHERE NameBauteil = ''Leistungsfaktor UPDATE bauteil Set Leistungsfaktor = ' ' WHERE NameBauteil = ''Wartung weitestgehend WartungsfreiUPDATE bauteil Set Wartung = ' weitestgehend Wartungsfrei' WHERE NameBauteil = '' Die Daten wurden geändert.

Geändert von JCDenton (14-05-2007 um 13:34 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:24 Uhr.